为什么hive 里面group by 以后还是没有去重
答案:2 悬赏:10 手机版
解决时间 2021-04-06 12:00
- 提问者网友:孤凫
- 2021-04-06 02:00
为什么hive 里面group by 以后还是没有去重
最佳答案
- 五星知识达人网友:北方的南先生
- 2021-04-06 02:16
cGreat works are performed not by strength but by perseverance.
全部回答
- 1楼网友:一把行者刀
- 2021-04-06 02:51
hive distribute by 和group by 的区别:
group by是对检索结果的保留行进行单纯分组,一般总爱和聚合函数一块用例如avg(),count(),max(),main()等一块用。
distribute by是控制在map端如何拆分数据给reduce端的。hive会根据distribute by后面列,对应reduce的个数进行分发,默认是采用hash算法。sort by为每个reduce产生一个排序文件。在有些情况下,你需要控制某个特定行应该到哪个reducer,这通常是为了进行后续的聚集操作。distribute by刚好可以做这件事。因此,distribute by经常和sort by配合使用。
注:distribute by和sort by的使用场景
1.map输出的文件大小不均。
2.reduce输出文件大小不均。
3.小文件过多。
4.文件超大。
抛砖引玉,不足之处还望大神指正~
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯