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

Todd Lipcon commented on HBASE-2782:
------------------------------------

Agree, not going to sidetrack. I'll bring up my gripes re snapshot/backup/etc 
in the "move meta to ZK" jira if/when it gets filed :)

Also agree that we should not special-case meta in the framework. After 
sleeping on it, I continue to like option 2. All that we should have to do for 
initial cut is:
1) Define an interface like CallPrioritizer that takes a call object (method 
name/params) and provides a PrioritizedCall object (probably just wrapper for 
Long plus the original call object)
2) Internal to RPC, change callQueue over to a priority queue, where we compare 
by the call priorities. If no callprioritizer is specified, we just prioritize 
on insertion time like we do now.
3) Provide default implementation which prioritizes meta requests above user 
requests. Make it a configurable class so people can experiment with fancier 
QOS. If this turns out to work well, we turn it on by default, otherwise we 
leave the "in-order execution" as is by default.

Then we can do other stuff like "reserved handler pools" or other ways of 
guaranteeing execution of high priority requests in a followup JIRA.

> QOS for META table access
> -------------------------
>
>                 Key: HBASE-2782
>                 URL: https://issues.apache.org/jira/browse/HBASE-2782
>             Project: HBase
>          Issue Type: Improvement
>          Components: regionserver
>            Reporter: Todd Lipcon
>
> I'd like to brainstorm some ideas on how we can prioritize reads and writes 
> to META above reads and writes to other tables. I've noticed that if the 
> regionserver hosting META is under heavy load, then lots of other operations 
> take much longer than they should. For example, I'm currently running 120 
> threads of YCSB across 3 client nodes hitting a 5-node cluster. Doing a full 
> scan of META (only 600 rows) takes upwards of 30 seconds in the shell, since 
> all of the handler threads are tied up and there's a long RPC queue. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to