栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

2022-01-10 SHEIN大数据java开发岗位

2022-01-10 SHEIN大数据java开发岗位

面试该岗位,主要问了以下几个问题:

1、MapReduce 的shuffle过程

回答:map线程数据首先会复制到一个环形缓冲区,在环形缓冲区中进行分区和排序,当环形缓冲区达到一个阈值时数据会溢写到磁盘,这个过程可能会有conbine操作,最终每个分区的数据生成一个数据已经排序的文件。之后是reduce的shuffle过程,reduce线程将磁盘中每个分区的数据复制到内存缓冲区,进行排序,按照key进行聚合,然后输出数据作为reduce线程的输入数据,经过reduce计算之后生成文件存放到hdfs上。

2、1G的文件256m的分片大小,最终分成几个map线程;map和reduce线程数量控制;

回答:通过mapred.reduce.task或者mapred.max.split.size参数控制;

通过设置mapred.reduce.task来控制reduce数

3、yarn container的内存区域

回答:这个不是很清楚。

4、有没有看过大数据组件的源码

回答:看过yarnchild启动过程部分源码,曾经做过numa绑定yarnchild线程的优化;

5、map的分区可以怎么设计

回答:mapreduce程序partition方法可以指定分区方式,可以对某个key做哈希计算进行分区。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/702027.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号