在hbase上的Mapreduce

时间:2017-03-15 10:10:10

标签: mapreduce hbase

我正在执行一个地图减少作业,它正在处理来自hbase表的30行(MAP_INPUT_RECORDS = 30)。此表有11000个区域但是在任何时候,只有按照我们的区域拆分策略,一条记录将在单个区域中(即单个记录不会在2个或更多区域内)。在这里,我在日志中获得了更多的映射器65(TOTAL_LAUNCHED_MAPS = 65)。根据hbase文档,对于每个区域,将分配一个映射器。但就我而言,地图制作者的数量超过了该地区。建议一些解决方案提前谢谢。

1 个答案:

答案 0 :(得分:0)

您有11000个区域(表区域),因此最多可以有11000个映射器。

您是否将表区域与Hbase的区域服务器混淆。 Hbase可以有10个区域服务器,并且hbase上托管的表可以有1000个区域。每个区域服务器托管100个区域。

TableInputFormat根据表的区域而不是Hbase Region Server生成映射器。

为了更好地理解,请关注http://bytepadding.com/big-data/hbase/hbase-parameter-tuning/