hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-12394) Support multiple regions as input to each mapper in map/reduce jobs
Date Wed, 12 Nov 2014 00:32:34 GMT

    [ https://issues.apache.org/jira/browse/HBASE-12394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14207407#comment-14207407

stack commented on HBASE-12394:

Can I pass a hbase.mapreduce.scan.regionspermapper that is < 1?  E.g. .1 for ten mappers
per region?  It does not look like it. That'd be sweet. Could do in another issue.

Need to add a release note on how to make this feature work listing  new config.

In comments, you say HBASE-2302. If you make a new patch, write out what that means.

Can you add a test to demo your new code actually works (move stuff to a static method if
that helps make it testable?)

There is a bunch of code duplicated from the if branch in the else branch.  Want to abstract
out into a method they can share?


> Support multiple regions as input to each mapper in map/reduce jobs
> -------------------------------------------------------------------
>                 Key: HBASE-12394
>                 URL: https://issues.apache.org/jira/browse/HBASE-12394
>             Project: HBase
>          Issue Type: Improvement
>          Components: mapreduce
>    Affects Versions: 2.0.0,
>            Reporter: Weichen Ye
>         Attachments: HBASE-12394-v2.patch, HBASE-12394-v3.patch, HBASE-12394-v4.patch,
> Welcome to the ReviewBoard :https://reviews.apache.org/r/27519/   
> The Latest Patch is "Diff Revision 2 (Latest)"
> For Hadoop cluster, a job with large HBase table as input always consumes a large amount
of computing resources. For example, we need to create a job with 1000 mappers to scan a table
with 1000 regions. This patch is to support one mapper using multiple regions as input.
> In order to support multiple regions for one mapper, we need a new property in configuration--"hbase.mapreduce.scan.regionspermapper"
> hbase.mapreduce.scan.regionspermapper controls how many regions used as input for one
mapper. For example,if we have an HBase table with 300 regions, and we set hbase.mapreduce.scan.regionspermapper
= 3. Then we run a job to scan the table, the job will use only 300/3=100 mappers.
> In this way, we can control the number of mappers using the following formula.
> Number of Mappers = (Total region numbers) / hbase.mapreduce.scan.regionspermapper
> This is an example of the configuration.
> <property>
>      <name>hbase.mapreduce.scan.regionspermapper</name>
>      <value>3</value>
> </property>
> This is an example for Java code:
> TableMapReduceUtil.initTableMapperJob(tablename, scan, Map.class, Text.class, Text.class,

This message was sent by Atlassian JIRA

View raw message