我喜歡在spark中將數據框寫入dynamodb。 因此我使用rdd.saveAsHadoopDataset(JobConf)
。但rdd類型不匹配。它需要hadoopRDD類型的rdd。因此我喜歡將數據幀轉換爲rdd.I使用了df.rdd
,它給出了rdd而不是hadoopRDD。我正在使用spark-scala API。如果有更好的方法將Dataframe寫入Dyanmodb的火花,這將有所幫助。如何將Spark中的DataFrame轉換爲HadoopRDD
1
A
回答
1
你不需要轉換你的RDD。
因爲Hadoop API是圍繞鍵值對構建的,所以Spark圍繞RDD自動包裝PairRDDFunctions(它增加了額外的功能),其中數據存儲在Tuple2
對象中。所以你只需要把你的數據放入RDD[(T,V)]
,那麼你將有saveAsHadoopDataset
方法可用。
下面是一個例子:
import org.apache.hadoop.mapred.JobConf
val tupleRDD : RDD[(Int, Int)] = sc.parallelize(Array((1,2), (3,4), (5,6)))
val jobConf = new JobConf()
設置任何需要的設定。
tupleRDD.saveAsHadoopDataset(jobConf)
0
如果有人正在尋找從spark-scala到dyanmodb的數據框。然後下面可能會有所幫助。
import com.amazonaws.services.dynamodbv2.document.Item
import com.amazonaws.services.dynamodbv2.document.DynamoDB
var json_arr=df.toJSON.collect() //Convert dataframe to json array
val table = dynamoDB.getTable("table_name") //dynamoDB is connection to dynamodb
for (element <- json_arr) {
val item = Item.fromJSON(element)
table.putItem(item)
}
+0
dynamoDB是如何實例化的? –
相關問題
- 1. 如何將Spark Dataframe轉換爲JSONObject
- 2. 如何將Cassandra ResultSet轉換爲Spark DataFrame?
- 3. 如何將Pandas的DataFrame轉換爲Spark中的DataFrame或LabeledPoint?
- 4. 將Pandas Dataframe轉換爲Pyspark中的Spark Dataframe的TypeError
- 5. 將JDBC ResultSet轉換爲Spark RDD/DataFrame
- 6. 將Spark Dataframe轉換爲XML文件
- 7. 將Spark Dataframe轉換爲Scala Map集合
- 8. Spark 2.0 - 將DataFrame轉換爲DataSet
- 9. 將Java ResultSet轉換爲Spark DataFrame
- 10. 如何將Spark Dataframe中的列從矢量轉換爲集合?
- 11. 如何將Spark DataFrame轉換爲Java中POJO的RDD
- 12. 如何將JavaPairInputDStream轉換爲Spark中的DataSet/DataFrame
- 13. 將case類的DStream轉換爲joda.DateTime轉換爲Spark DataFrame
- 14. 在Spark中,如何使用SparseVector將DataFrame轉換爲RDD [Vector]?
- 15. 如何將HH:MM:SS:Ms的Spark Dataframe列轉換爲秒值?
- 16. Apache Spark:如何將Spark DataFrame轉換爲類型爲RDD [(Type1,Type2,...)]的RDD?
- 17. 如何將Ignite隊列轉換爲Spark Dataframe?
- 18. 如何使用Scala/spark將矩陣轉換爲DataFrame?
- 19. 如何將隨機化轉換應用於Spark中的DataFrame列?
- 20. 我們如何將HadoopRDD結果轉換爲Parquet格式?
- 21. 將變化的元組的RDD轉換爲Spark中的DataFrame
- 22. 將列表或RDD的列表轉換爲Spark-Scala中的DataFrame
- 23. 使用Scala將org.apache.spark.mllib.linalg.Vector RDD轉換爲Spark中的DataFrame
- 24. 如何將JSON的RDD轉換爲Dataframe?
- 25. 如何轉動Spark DataFrame?
- 26. 如何將Pandas DataFrame轉換爲列表?
- 27. 如何將RDD [List [Int]]轉換爲DataFrame?
- 28. 如何將Pandas DataFrame轉換爲TimeSeries?
- 29. Spark Scala Dataframe將Struct的Array列轉換爲Map列
- 30. 將包含BigInt的RDD轉換爲Spark Dataframe
謝謝你的答案。你有什麼Spark-Scala的例子上面。其實我是新手火花,所以它會有所幫助。提前感謝。 – Yogesh
增加了一個什麼樣的RDD可以工作的例子。 – jamborta