Spark Group By Key to(String,Iterable <String>)-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Spark Group By Key to(String,Iterable <String>)

2018-12-10 16:24:04 2238 1

我试图按键将urldata分组,其中值为字符串

样本数据 :

url_3 url_2
url_3 url_2
url_3 url_1
url_4 url_3
url_4 url_1
预期结果:

(url_3,(url_2,url_1))
(url_4,(url_3,url_1))
1)加载urldata:

Dataset lines = spark.read()

.textFile("C:/Users/91984/workspace/myApp/src/test/resources/in/urldata.txt");

2)使用空格拆分数据集

Encoder> encoder2 =

Encoders.tuple(Encoders.STRING(), Encoders.STRING());

Dataset> tupleRDD = lines.map(f->{

Tuple2<String, String> m = 
    new Tuple2<String, String>(f.split(" ")[0], f.split(" ")[1]);
return m;

},encoder2);
3)使用groupbyKey对密钥上的元组RDD数据库进行分组

KeyValueGroupedDataset> keygrpDS =

tupleRDD.groupByKey(f->f._1, Encoders.STRING());

有人可以解释一下为什么第3步中的groupByKey正在返回 KeyValueGroupedDataset>而不是KeyValueGroupedDataset>为了获得预期结果需要做什么改变。

取消 提交回答
全部回答(1)
  • 社区小助手
    2019-07-17 23:19:22

    这就是它与spark中的数据集一起使用的方式。当您拥有类型的数据集时Dataset,可以通过某个映射函数对其进行分组,该函数接受类型为T的对象并返回类型为K的对象(键)。你得到的是一个KeyValueGroupedDataset可以调用聚合函数的函数。在您的情况下,您可以使用mapGroups向您提供将键K和迭代映射Iterable到您选择的新对象R的函数。如果它有帮助,在你的代码中,T是一个Tuple2和K一个URL。

    0 0
相关问答

0

回答

Scalable Monitoring with Apache Spark and Friends

2018-06-17 17:20:22 816浏览量 回答数 0

0

回答

FlowFuzz-A-Framework-For-Fuzzing-OpenFlow-Enabled-Software-And-Hardware-Switches

2018-06-25 22:26:40 907浏览量 回答数 0

1

回答

spark2.1+kafka_2.11-0.9.0.1 的安装配置失败了-服务报错

2020-05-31 12:05:43 343浏览量 回答数 1

1

回答

spark2.1+kafka_2.11-0.9.0.1 的安装配置失败 - 配置报错

2020-06-02 12:19:12 384浏览量 回答数 1

1

回答

org.springframework.beans.NotWritablePro?报错

2020-06-09 10:30:36 628浏览量 回答数 1

1

回答

spark2.1+kafka_2.11-0.9.0.1 的安装配置失败了:报错

2020-06-14 06:31:01 384浏览量 回答数 1

1

回答

idea 刚加入spring依赖,一编译就报错,说包不存在 ?报错

2020-06-23 14:01:37 347浏览量 回答数 1

1

回答

Spark中reduceBykey 和groupBykey区别是什么?

2021-12-10 22:43:33 122浏览量 回答数 1

1

回答

Spark中ark.hadoop.odps.cupid.smartnat.enable参数是啥作用?

2021-12-12 16:13:14 341浏览量 回答数 1

1

回答

在PolarDB 的架构中,为了保证磁盘数据始终保持连续性 和一致性,避免用户在只读节点上访问到版本

2022-09-19 20:00:08 121浏览量 回答数 1
+关注
社区小助手
社区小助手是spark中国社区的管理员,我会定期更新直播回顾等资料和文章干货,还整合了大家在钉群提出的有关spark的问题及回答。
文章
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载