2017-08-16 26 views
0

私はスパークするのが初めてです。私はRDDの各要素をエグゼキュータに送信して処理し、RDDすることを試みています。エグゼキュータでRDDを処理する方法

私は以下のようにドライバのコードにRDDを作成しています:

ArrayList<String> test = new ArrayList<String>(); 
test.add("conf1"); 
test.add("conf12"); 
JavaRDD<String> result = sc.parallelize(test); 

を私はエグゼキュータ同時にCONF1とconf12の両方を処理することができるようにこれを処理する方法がわかりません。フラットマップとマップを試しましたが動作しませんでした。

これを行うにはどうすればよいでしょうか?ありがとうございました

答えて

1

あなたのコレクションには2つの要素があります。ほとんどの場合、2つのパーティションで終わる可能性があります。あなたは を確認することができる

result.partitions(); 

を呼び出し、マップやflatMapは動作しませんどのような意味ですか? おそらく、変換にアクションを追加する必要があります。 Sparkは、行動を要求するまで変換を評価しません。例えば

問題でした

result.map(x -> x + " processed").collect(); 
+1

感謝を。私は行動を呼んでいませんでした。 – ACE

関連する問題