Hadoop的溢写
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hadoop的溢写相关的知识,希望对你有一定的参考价值。
问题:
1,一台服务器上,同时运行4个MapTask任务,即当前服务器会有4个溢写缓冲区,即一个MapTask会开启一个溢写缓冲区
2,Spill过程不一定会发生,当此MapTask输出的数量很小时,小于(默认100Mb*0.8)
3,Merge过程不一定会发生:a,Spill过程没有发生;b,Spill过程发生了,但只生成了一个Spill文件,没必要合成
4,溢写缓冲区实际上是一个对象blockingBuffer。如果没发生Spill,数据就存在blockBuffer里。当缓存失效的情况发生时,即当前的MapTask任务失效,即当此MapTask任务失效时,底层会重新在其他服务器上重新执行此MapTask
5,不能光凭MapTask接收的数据量来判断生成Spill文件数,因为Spill文件数是由MapTask的输出量决定的
以上是关于Hadoop的溢写的主要内容,如果未能解决你的问题,请参考以下文章