繁体   English   中英

在Java的Apache Spark中使用Tuple3时,combineByKey的替代方法是什么?

[英]What is the alternative for combineByKey while using Tuple3 in Apache Spark in Java?

我刚开始使用Java中的Apache Spark。 我目前正在做一个包含一些书籍数据的迷你项目。 我必须找到每个国家/地区最受欢迎的作家。

我有一个pairRDD,其中键是国家/地区,值是作者,就像这样

[(usa,C. S Lewis), (australia,Jason Shinder), (usa,Bernie S.), (usa,Bernie S.)]

我是否必须使用Tuple3来添加一个字段并计算每个值出现的次数? 如果是这样,如何在Tuple3中使用CombineByKey?

我有另一个想法,我可以从pairRDD中获取所有密钥,并以此为基础,可以过滤使用另一个具有author_names和提到它们的次数的author_names ,以找到最受欢迎的作者。 但是,这感觉不太好,因为我必须遍历所有键。 救命。

从字面上看这是YAW(还有另一个Wordcount):

rdd.mapToPair(s -> new Tuple2<>(s, 1)).reduceByKey((c1, c2) -> c1 + c2);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM