温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

hadoop1.x   MapReduce工作原理

发布时间:2020-06-11 04:26:14 来源:网络 阅读:682 作者:colapanda 栏目:大数据

hadoop1.x   MapReduce工作原理

hadoop1.x   MapReduce工作原理

hadoop1.x   MapReduce工作原理

hadoop1.x   MapReduce工作原理

MapReduce 如何解决负载均衡和数据倾斜:

阶段主要出在Map作业结束后,shuffer(洗牌)过程中,如何将map处理后的结果分成多少份,交由Reduce作业,使得每部分reduce作业尽可能均衡处理数据计算。

系统默认将partitions  按照Hash模运算分割(存储对象的hash值与reduce的个数取模),这样很容易出现数据倾斜,导致其中一个reduce作业分得大量数据计算,另一个ruduce作业基本上没有任何数据处理。如何,解决的这种事情,就需要靠程序控制partitions的值

 

Sort:默认排序是按照字典排序的(按ASCII

 

Shuffer阶段比较的操作要执行两次,一次是map task之后的sort另一次是在从本次磁盘将partition数据拷贝到指定reduce 之前的合并,将符合统一范围的key的数据归并



hadoop1.x   MapReduce工作原理

hadoop1.x   MapReduce工作原理

面试:

1.partition:将map输出的数据,按照某种规则将数据划分,分给哪一个reduce,默认使用hash模运算执行

  2.spill

    过程:map的内存缓存区数据填满时,启动一个单独的线程,将数据按照一定比例写入本地磁盘。

 Sort:将数据按照大小排序(可自定义)默认字典排序

 Combiner:(可有可无)将相同的K_V中的value加起来,减少溢写磁盘的数据

hadoop1.x   MapReduce工作原理

Shuffer的后半过程:

 map处理后放入map节点的本地磁盘的数据拷贝到rudece节点的内存中 去,数据量少的话,直接交由reduce处理。数据量大的时候,同样需要溢写到磁盘中,按照K值相同的方法进行merge,然后在交由指定的reduce执行


hadoop1.x   MapReduce工作原理


修改默认hdfsblock大小:

这个需要修改hdfs-site.conf配置文件,增加全局参数dfs.block.size

如下:

修改后参数,

把配置同步到其它节点,并重启hdfs

hadoop1.x   MapReduce工作原理


hadoop1.x   MapReduce工作原理


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI