Api ApacheSpark:我们如何将RDD[v]拆分为Map[k,RDD[v]]?
groupByKey给了我RDD[key,value],我找不到任何方法将其转换为Map[key,RDD[values]]。 谢谢Api ApacheSpark:我们如何将RDD[v]拆分为Map[k,RDD[v]]?,api,apache-spark,Api,Apache Spark,groupByKey给了我RDD[key,value],我找不到任何方法将其转换为Map[key,RDD[values]]。 谢谢 SVAFAIK没有Spark原语允许您按这样的键拆分RDD。我们正在使用过滤来获得类似的结果。在性能方面,它必须比实际的groupByKey轻得多,因为过滤器不需要洗牌 val keys = rdd.keys.collect val dataByKey = keys.map(key => (key, rdd.filter(_._1 == key)).toMap
SVAFAIK没有Spark原语允许您按这样的键拆分RDD。我们正在使用过滤来获得类似的结果。在性能方面,它必须比实际的
groupByKey
轻得多,因为过滤器不需要洗牌
val keys = rdd.keys.collect
val dataByKey = keys.map(key => (key, rdd.filter(_._1 == key)).toMap
请注意,钥匙必须放在驾驶员的内存中才能使用。非常感谢您回答我的问题。我会试试你的建议。可能是重复的