[ https://issues.apache.org/jira/browse/HBASE-5776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13273652#comment-13273652 ]
Liyin Tang commented on HBASE-5776: ----------------------------------- Interesting :) Thanks @Otis for pointing the asynchbase out and I didn't know that before. I haven't read the asynchbase closely and it looks like both HTableMultiplexer and asynchbase are attempting to provide async (deferred) api for applications. However, I believe the HTableMulplixer mainly focuses on solving the slow region server problem by partition the put requests based on its destination region server {color:red} before deferring it {color} . So slow region server will only hammer one shard of the requests. BTW, is the asynchbase compatible with the current HBASE rpc protocol ? > HTableMultiplexer > ------------------ > > Key: HBASE-5776 > URL: https://issues.apache.org/jira/browse/HBASE-5776 > Project: HBase > Issue Type: Improvement > Reporter: Liyin Tang > Assignee: Liyin Tang > Attachments: D2775.1.patch, D2775.1.patch, D2775.2.patch, > D2775.2.patch > > > There is a known issue in HBase client that single slow/dead region server > could slow down the multiput operations across all the region servers. So the > HBase client will be as slow as the slowest region server in the cluster. > > To solve this problem, HTableMultiplexer will separate the multiput > submitting threads with the flush threads, which means the multiput operation > will be a nonblocking operation. > The submitting thread will shard all the puts into different queues based on > its destination region server and return immediately. The flush threads will > flush these puts from each queue to its destination region server. > Currently the HTableMultiplexer only supports the put operation. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira