2016-04-16 14 views
0

Javaコードに次のRDDがあります。Apache Spark RDDのコレクションを1つのRDDに変換するJava

(1, List(1596, 1617, 1929, 2399, 2674)) 
(2, List(1702, 1785, 1933, 2054, 2583, 2913)) 
(3, List(1982, 2002, 2048, 2341, 2666)) 

私がしようとしているのは、別のRDDを作成することです。内容は次のようになります。(必ずしも同じ順序で)

1596 
1617 
1929 
2399 
2674 
1702 
1785 
1933 
2054 
2583 
2913 
1982 
2002 
2048 
2341 
2666 

私はその中のすべてのオブジェクトを単一RDD (JavaRDD<String>)へのオブジェクトのコレクションを1 RDD (JavaRDD<ArrayList<String>>)の変換はどうすればよいかわかりません。誰かが私にいくつかのJAVAリソースを指摘できたら大変感謝します。

+1

を次のようにして、Scalaで同じことを行うことができます。 (2、List(1702,1785,1933,2054,2583,2913))、(3、List(1702)、1785、1933、2054、2583、2913) (1982、2002、2048、2341、2666))))) val rdd2 = rdd1.flatMap(x => x._2) ' – WoodChopper

答えて

0

これはScalaで行います

val data = List((1, List(1596, 1617, 1929, 2399, 2674)), 
    (2, List(1702, 1785, 1933, 2054, 2583, 2913)), 
    (3, List(1982, 2002, 2048, 2341, 2666))) 

val rdd_data = sc.parallelize(data) 
val rdd_flattened = rdd_data.flatMap((index, value) => value) 
関連する問題