hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yu Li (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-10932) Improve RowCounter to allow mapper number set/control
Date Fri, 25 Apr 2014 18:53:18 GMT

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

Yu Li commented on HBASE-10932:

Hi [~jdcryans],

If we follow this logic, do you mean the "-m" option of DistCp also useless?

IMHO, the configuration of job scheduler in JT/Yarn is the server-side configuration, while
the "-m" option is the client-side configuration, and both are necessary.

Back to the scheduler discussion, I believe job scheduler could only limit the max resource
one user could use, and it depends on the user to decide how he uses the resource assigned
to him. Like in the example you gave, what if the "slow" pool have 4 slots while only one
user submit a rowcounter and he prefers only 2 maps running in parallel? I'm afraid asking
the cluster operator to create another "slow" pool with only 2 slots is not a good solution.

In a common hbase ETL application, user would need to first do distcp, then bulkload, then
rowcounter to check data integrity, and he would prefer distcp to run as fast as possible
w/ low scan workload during rowcounter. In this case, he would need to submit the distcp job
to the "fast" queue while the rowcounter job to the "slow" queue? And he also needs to get
access to both queues...

Anyway, this is a real requirement from user in our product env, and I'm just trying to contribute
this to community in case this can help other users. But if you still think it useless, just
go ahead and close it, you're the boss after all. :-)

And no matter what decision made, thanks for your time on reviewing this JIRA and discussion.

> Improve RowCounter to allow mapper number set/control
> -----------------------------------------------------
>                 Key: HBASE-10932
>                 URL: https://issues.apache.org/jira/browse/HBASE-10932
>             Project: HBase
>          Issue Type: Improvement
>          Components: mapreduce
>            Reporter: Yu Li
>            Assignee: Yu Li
>            Priority: Minor
>         Attachments: HBASE-10932_v1.patch, HBASE-10932_v2.patch
> The typical use case of RowCounter is to do some kind of data integrity checking, like
after exporting some data from RDBMS to HBase, or from one HBase cluster to another, making
sure the row(record) number matches. Such check commonly won't require much on response time.
> Meanwhile, based on current impl, RowCounter will launch one mapper per region, and each
mapper will send one scan request. Assuming the table is kind of big like having tens of regions,
and the cpu core number of the whole MR cluster is also enough, the parallel scan requests
sent by mapper would be a real burden for the HBase cluster.
> So in this JIRA, we're proposing to make rowcounter support an additional option "--maps"
to specify mapper number, and make each mapper able to scan more than one region of the target

This message was sent by Atlassian JIRA

View raw message