大数据面试2/100

一、Hadoop

1、入门

1.1 hadoop常用端口号

hdfs页面yarn历史服务器hdfs内部通信端口号
2.x500708088198889000/8020
3.x98708088198889820/9000/8020

1.2 常用配置文件

core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml workers、works

2、hdfs

2.1 读写流程

2.2 小文件的危害(数据倾斜)

        (1) 存储

        每个小文件最少占用150个字节,如果内存为128g,那最多可以存储128g/150字节=9.1亿个文件。

        (2) 计算。每个文件单独切片,1个maptask分配1g内存,所以小文件过多会占用大量的计算资源

 2.3 小文件解决办法

        (1) har归档

        (2) CombineTextInputformat

        (3) JVM重用

2.4 文件副本数

        默认3个,企业中常用也是3个

2.5 块大小

        1.x:64m,2.x:128m,本地:32m,企业:128m、256m、512m

        块大小取决于磁盘读写速度

        普通机械硬盘:100m

        ssd 固态硬盘普通:300-400m

        ssd 固态硬盘高级:500-600m

3、mapreduce

3.1 shuffle及其优化

        shuffle是map方法之后,reduce方法之前,不是单纯的map之后reduce之前

        (1) Map方法之后,数据首先进入到分区方法,把数据标记好分区,然后把数据发送到环形缓冲区;环形缓冲区默认大小100m,环形缓冲区达到80%时,进行溢写;溢写前对数据进行排序,排序按照对key的索引进行字典顺序排序,排序的手段快排;溢写产生大量溢写文件,需要对溢写文件进行归并排序;对溢写的文件也可以进行Combiner操作,前提是汇总操作,求平均值不行。最后将文件按照分区存储到磁盘,等待 Reduce端拉取。

        (2) 每个Reduce拉取Map端对应分区的数据。拉取数据后先存储到内存中,内存不够了,再存储到磁盘。拉取完所有数据后,采用归并排序将内存和磁盘中的数据都进行排序。在进入 Reduce方法前,可以对数据进行分组操作。

4、yarn

4.1 工作机制

4.2 调度器

        (1) FIFO调度器

        单队列,先进先出,生产环境中很少使用

        (2) 容量调度器

        支持多队列,执行顺序优先满足先进入的任务,资源不够可以借

        (3) 公平调度器

        支持多队列,每个任务公平享有队列资源,资源不够可以借

4.3 企业中怎么使用

        默认一个default

        如果对并行度要求高的:公平,如果对并行度要求不高:容量

        企业中都是多队列,按照部门+业务的方式设置队列,达到解耦的效果,当出现大型活动或促销的时候,可以暂时停止一个不紧急的业务队列,也就是进行降级使用

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:1024 设计师:我叫白小胖 返回首页
评论

打赏作者

熙宁。

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值