2017-08-31 5 views
0

StringのArrayBufferをRDDに変換するメソッドがあります。spark rddが空になるまで.count()

def makeRddFromArray() : RDD[String] = { 
val rdd = Conf.sc.parallelize(listOfStrings) 
//rdd.count 
rdd} 

では、私はこのコメントを解除した場合、それはサイズ0のRDDを返すです)(rdd.countをコメントし、RDDは、適切なサイズです。誰かがなぜ私を説明することができますか? ありがとう

答えて

0

rdd.countは、DAGをトリガーして要素の数を取得するアクションです。

RDDは

scala> rdd 
res0: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[0] at parallelize 
at <console>:24 

そのここに何を行っていないクラスを指定します。

+0

回答ありがとうございます。その後、私が持っているコードで :+: 'ヴァルfinalRDDは= sc.union(listOfStringRDD)' 私はこの '.count()'メソッド 'makeRDDFromArray'方法 で'のprintln( "最終RDDサイズ" をコメントしている場合rdd.count()) '0を出力します。 コメント付きで、100が正しいものを出力します。 – Tomasz

関連する問題