我有一對RDD [String,String]其中key是一個字符串,值爲html。我想根據n個鍵將這個rdd分成n個RDDS並將它們存儲在HDFS中。將RDD拆分爲多個RDDS
htmlRDD = [key1,html
key2,html
key3,html
key4,html
........]
根據密鑰拆分此RDD,並將每個RDD的html分別存儲在HDFS上。爲什麼我想這樣做?當我嘗試將主RDD中的html存儲到HDFS時,由於某些任務被輸出協調器拒絕,所以需要很長時間。 我在斯卡拉這樣做。
htmlRDD.saveAsHadoopFile("hdfs:///Path/",classOf[String],classOf[String], classOf[Formatter])
只是瘋狂的猜測,有多少分區和執行者在htmlRDD?可能發生的情況是,火花只是用查詢來填滿HDFS。但是,只有當你有很多火花執行者時纔會發生這種情況。 – evgenii