关注
1. HashPartitioner 是默认的分区器,也可以用别的, 比如TotalOrderPartitioner, 也可以自定义开发。
第一个问题, 先回答为什么要分区 就是数据shuffle过程中的一种打散策略。
Hash散列化是最容易想到的。
2. 在MR当中会用到多次排序过程 特别是map输出到内存再溢写到磁盘时会产生大量的临时文件,这些小文件是不能直接交给Reducer处理的,而要进行一个合并的过程, 这个过程是带着map-key进行操作的 所以要用到归并排序。 在环形缓冲的内存区 使用快排, 原因我还没想到。
(https://blog.csdn.net/u010737756/article/details/114198358 )
3. 先定义和回顾数据倾斜的概念, 然后再思考join这个过程的实现 (reduce把相同key分组做笛卡尔积) 如果大表小表的差异巨大, 表现为小表的数据量比较少但key却比较集中,导致分发到某一个或几个reduce上的数据比其他reduce多很多,易造成数据倾斜。 常常会采用mapjoin 优化这类问题
查看原帖
5 评论
相关推荐
05-07 11:06
重庆移通学院 C++
HoePointer:把重点可以标黑,简历精简一下,然后把你的项目放在 github 或者 gitee 上面,readme 写好看一点(一般面试官有可能会翻你的网页) 点赞 评论 收藏
分享
查看17道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 27届实习投递记录 #
140497次浏览 1509人参与
# 求职中的尴尬瞬间 #
41337次浏览 122人参与
# 26届春招投递记录 #
46969次浏览 374人参与
# 如果可以选,你最想从事什么工作 #
830407次浏览 4935人参与
# 听劝,这个简历怎么改 #
422221次浏览 1900人参与
# 你们的毕业论文什么进度了 #
1397465次浏览 10084人参与
# 23届的你们都什么时候入职? #
265895次浏览 1137人参与
# 通信硬件知识分享 #
52744次浏览 552人参与
# 你觉得技术面多长时间合理? #
190849次浏览 1231人参与
# 美团求职进展汇总 #
3227040次浏览 25263人参与
# 绿盟笔试 #
6469次浏览 56人参与
# 我在大厂见过的最低学历 #
12613次浏览 99人参与
# 找工作中的小确幸 #
94657次浏览 476人参与
# 我想去国央企的原因 #
81830次浏览 424人参与
# 你觉得第一学历对求职有影响吗? #
279570次浏览 1506人参与
# 小米编程考试 #
42695次浏览 159人参与
# 秋招拿一个offer可以躺平吗 #
280333次浏览 1418人参与
# 如何成为1个AI工程师? #
9356次浏览 376人参与
# 工作压力大,你会干什么? #
87495次浏览 726人参与
# 你觉得机械有必要实习吗 #
90458次浏览 540人参与
