您的位置:首页 > 其它

MapRed程序map个数控制分析

2015-10-28 10:31 302 查看


前言:

        我们在线上跑的MapRed程序和Hive程序,Map数到底怎么控制?这个问题一直比较模糊,这次有机会深入代码里面去看,才了解到其实MapReduce针对不同输入格式有不同的判断文件大小的规则以及文件切片和合并的方式。下面就来具体了解一下FileInputFormat和CompositeInputFormat两种主流输入格式的处理细节。

首先在这里提一下MapReduce框架是默认一个文件Block对应一个Map的输入的,所以在这个背景下才有不同的输入格式自己的有针对性的文件切分或合并方式。

 

CompositeInputFormat格式:

          这个是Hive读取所有Textfile格式的文件是用的默认输入格式:

                                有几种情况如:

                                min:128m,max:256m,split按256m划分。

                                min:128m,max:0,split按128m划分。

 

FileInputFormat输入格式:

                    TextInputFormat,KeyValueTextInputFormat等文本格式的文件都使用这种方式切分Map的输入文件:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: