0
単一の要素のRDDにn個の要素のRDDを変換します以下は、私は上記のRDDの要素を連結し、同様に単一の要素のRDDにそれを変換したい</p> <pre><code>val rdd1: RDD[String] = RDD("a","b","c","d") </code></pre> <p>以下のように私は、文字列のRDDを持って
RDD("a,b,c,d")
これを行う最善の方法は何ですか?
単一の要素のRDDにn個の要素のRDDを変換します以下は、私は上記のRDDの要素を連結し、同様に単一の要素のRDDにそれを変換したい</p> <pre><code>val rdd1: RDD[String] = RDD("a","b","c","d") </code></pre> <p>以下のように私は、文字列のRDDを持って
RDD("a,b,c,d")
これを行う最善の方法は何ですか?
はglom
機能を使用します。
val res: RDD[Array[String]] = RDD("a","b","c","d").glom
// > res = RDD(Array("a", "b", "c", "d"))
あなたはその後、mkString
機能を使用して文字列に配列を変換することができます。
本当に単一の要素の 'RDD'が必要ですか? 1つのアイテムしか持たない_distributed_コレクションを使用した場合の価値は何ですか?そうでなければ、そのレコードに興味があり、 'rdd1.collect()。mkString("、 ")'を呼び出すことができます。 –
rdd saveAsTextFileメソッドを使ってHDFSに結果を保存したかったのです。そういうわけで私はそれを別のRDDに変換したいのです。 – yAsH
@raHulこれを行う必要はありません。既に述べたように、すべてのデータを単一の値を持つRDDに集約するだけでは、分散処理フレームワークを使用することはできません。 'saveAsTextFile'はそれを世話し、結果をHDFSに配布します。 –