2016-05-29 6 views
-2

要件は、それぞれのゾーンの温度を合算されスパークに複数の要素またはキー値を評価

Ind,Z1,10 
Jap,Z2,20 
Ind,Z1,30 
Ind,Z2,10 
Jap,Z1,20 

この(国、地域、温度)のように私の入力データサンプルが見えます。

出力はそう に、私たちは単に国をフィルタリングし、(ゾーンがキーである)reduceByKeyでゾーンごとに温度をまとめることができます知っているが、私はしたくない....

Ind,Z1,40 
Ind,Z2,10 
Jap,Z1,20 

ようにする必要がありますそれを行う。

RDDまたはデータフレームを使用してこれをどのように達成できますか? 私たちのデータは国(ゾーン、気温)に基づいて評価する必要があるので、

私はキーの値のペアをどのように使用してカントリーを評価するのか不明です。

+1

'(国、ゾーン)、温度の' rddを作る 'map'' 'reduceByKey' –

+0

ありがとう@TheArchetypalPaul! –

答えて

1

それは(、(K1、K2)V)の@The原型ポールの提案後

val thirdRDD = baseRDD.map(x => x.split(",")) 
         .map(x => ((x(0), x(1)),x(2).trim().toInt)) 
         .reduceByKey(_+_) 

おかげで簡単でした!

関連する問題