在创建拆分时,Hadoop忽略mapreduce.input.fileinputformat.split.maxsize

时间:2016-11-28 12:30:27

标签: hadoop split yarn

我们正在使用HDP2.5并且有一个处理来自HBase的行的作业。我为工作设置了开始键和结束键,并且还尝试设置mapreduce.input.fileinputformat.split.maxsize以增加映射器的数量,但是与分割maxsize值无关,我得到25个映射任务......

我尝试了一些比dfs.blocksize小2,4,8倍的值。例如。 mapreduce.input.fileinputformat.split.maxsize=67108864 dfs.blocksize=134217728

启用应用程序管理器日志并未显示有关YARN如何决定地图任务数量的任何有用提示。我只看到如下消息: INFO util.RegionSizeCalculator: Calculating region sizes for table "my_table" ... INFO mapreduce.JobSubmitter: number of splits:25

增加工作的地图任务数量的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

默认情况下,HBaseMapReduceUtil中的map任务映射到区域数。在Splice Machine(开源),我们通过询问hbase存储文件生成更多的分割点。我们还添加了一种方法,我们直接使用memstore中的增量增量读取存储文件,而不是从HBase远程读取(慢速)。

如果您感兴趣,我可以发布代码链接吗?