-1
私はSpark RDDのすべての異なる値をコンマで区切って連結しようとしています。これは私のコードです:RDDでForeachが動作しない
def genPredicateIn(data: RDD[String], attribute: String): String = {
var s: String = attribute + " in {"
val distinct = data.distinct
distinct.foreach(s += ", " + _)
s += "}"
s
}
しかし、それは私に戻ってちょうど"attribute in {}"
、なぜ?私の間違いは何ですか?
私はval array <- data.distinct.collect
と書いてそれを繰り返します。どうして?
これがうまくいけば、とにかく{data1、data2} 'の属性が得られます –
はい私の問題ではありません –
ラムダに割り当てがあるとは思いません。なぜRDDを集めてから参加できないのですか?それは本質的にあなたがとにかくやっていることです。代入ができないのは、Sparkが文字列をすべてのワーカーノードに渡してデータのパーティションと連結することができないからです。 –