2016-09-27 38 views
0

選擇到/場我有一個RDD可以說dataRdd與像timestampurl ...領域添加/從RDD

我想創建一個新的RDD從這個dataRdd幾個字段。

下面的代碼段創建新RDD,其中timestampURL被認爲是價值,而不是場/列名:下面的代碼段

var fewfieldsRDD= dataRdd.map(r=> ("timestamp" -> r.timestamp , "URL" -> r.url)) 

然而,隨着,onetwothreearrivalSFO被認爲是列名:

val numbers = Map("one" -> 1, "two" -> 2, "three" -> 3) 
val airports = Map("arrival" -> "Otopeni", "SFO" -> "San Fran") 
val numairRdd= sc.makeRDD(Seq(numbers, airports)) 

誰能告訴我什麼我做錯了,我怎麼能創造一個新的Rdd,其字段名稱映射到另一個Rdd的值?

回答

0

您正在創建元組的RDD,而不是Map對象。請嘗試:

var fewfieldsRDD= dataRdd.map(r=> Map("timestamp" -> r.timestamp , "URL" -> r.url)) 
+0

感謝它的作品像一個魅力:) – user3776105