【发布时间】:2019-10-02 04:23:55
【问题描述】:
我想使用 ((String,String),BigDecimal) RDD 作为 PairRDD,这样我就可以使用 reduceByKey 函数。 Spark 不会将 RDD 识别为 PairRDD。有没有办法用RDD实现reduce功能。
scala> jrdd2
jrdd2: org.apache.spark.rdd.RDD[((String, String), java.math.BigDecimal)] = MapPartitionsRDD[33] at map at <console>:30
scala> val jrdd3 = jrdd2.reduceBykey((a,b)=>(a.add(b),1))
<console>:28: error: value reduceBykey is not a member of org.apache.spark.rdd.RDD[((String, String), java.math.BigDecimal)]
val jrdd3 = jrdd2.reduceBykey((a,b)=>(a.add(b),1))
【问题讨论】:
-
它的
.reduceByKey()不是.reduceBykey() -
感谢您发现错字。花了30分钟试图解决它。 :)
标签: scala apache-spark bigdata