[ 
https://issues.apache.org/jira/browse/HBASE-1110?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Purtell resolved HBASE-1110.
-----------------------------------

    Resolution: Duplicate

Resolving as dup of work [~jxiang] is working on. Technically I had the idea 
first but it's execution that matters. :-) /cc [~stack] [~lhofhansl]

> Distribute the master role to HRS after ZK integration
> ------------------------------------------------------
>
>                 Key: HBASE-1110
>                 URL: https://issues.apache.org/jira/browse/HBASE-1110
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Andrew Purtell
>
> After ZK integration, the master role can be distributed out to the HRS as 
> group behaviors mediated by synchronization and rendezvous points in ZK.
> - State sharing, for example load.
>    -- Load information can be shared with neighbors via ephemeral child 
> status znodes of a znode representing the cluster root.
>    -- Region servers can periodically walk the status nodes of their 
> neighbors. If they find themselves loaded relative to others, they can 
> release regions. If they find themselves less loaded relative to others, they 
> can be more aggressive about finding unassigned regions (see below).
> - Ephemeral znodes for region ownership, e.g. 
> /hbase//<region>/<ephemeral-node>
>   -- Use a permanent child of <region> to serve as a 'dirty' flag, removed 
> during normal close.
> - A distributed queue for region assignment. 
>   -- When coming up, HRS can check the assignment queue for candidates.
>   -- HRS shutdown includes marking regions clean and moving them onto 
> assignment queue.
>   -- All/any HRS can do occasional random walks over region leases looking 
> for expired-dirty state (when timeout causes ZK to delete the ephemeral node 
> representing the lease), and can helpfully move them first to a queue (+ 
> barrier) for splitting then onto the assignment queue. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to