18
2021
02

集群优化的核心思路是什么?

在网络带宽、磁盘IO是瓶颈的前提下能不使用io 和网络,就不使用。在必须使用的情况下,能少用IO 网络就少用,所有的能够减少网络开销的、减少IO使用的可选项,都可以作为集群调优的可选项。(软件层面(操作系统----集群层面),硬件层面,网络层面)
18
2021
02

在MR阶段,有哪些优化的点?

map尽量减少环形缓冲区flush的次数(减少IO 的使用)1、调大环形缓冲区的大小,将100M调更大。2、调大环形缓冲区阈值大的大小。3、对Map输出的数据进行压缩。(数据在压缩和解压的过程中会消耗CPU)reduce尽量将所有的数据写入内存,在内存中进行计算。
18
2021
02

最优的reduce是什么?

尽量将所有的数据写入内存,在内存中进行计算。
18
2021
02

最优的Map效率是什么?

尽量减少环形缓冲区flush的次数(减少IO 的使用)1、调大环形缓冲区的大小,将100M调更大。2、调大环形缓冲区阈值大的大小。3、对Map输出的数据进行压缩。(数据在压缩和解压的过程中会消耗CPU)
18
2021
02

内存角度介绍Map的输出到Reduce的输入的过程。

Map的输出先写入环形缓冲区(默认大小100M-可以认为调整)(可以再输出的同时写入数据),当缓冲区内的数据达到阈值(默认0.8-可以人为调整)时,对数据进行flash。flash 出去的数据的数量达到一定量(默认4个)时,进行数据的合并。Map的输出先写入环形缓冲区(默认大小100M-可以认为调整)(可以在输出的同时写入数据),当缓冲区内的数据达到阈值(默认0.8-可以人为调整)时,对数据进行flash。flash 出去的数据的数量达到一定量(默认4个)时,进行数据的合并。
18
2021
02

Split逻辑切分数据,节分大小是多大?

128MB
18
2021
02

Shuffle阶段的Partition分区算法是什么?

Shuffle阶段接收到键值对列表,<key, value>的list1,对每个Key取一个hash值。2,用key对设置的ReduceTask的数量取余3,余几,这个键值对数据就放在哪个分区。算法:对key 进行哈希,获取到一个哈希值,用这个哈希值与reducetask的数量取余。余几,这个数据就放在余数编号的partition中。
18
2021
02

Maptask的数量是可以人为设置的吗?

不能
18
2021
02

combiner运行在MapReduce的哪一端?

map端
18
2021
02

combiner的作用?

优化网络使用