You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "stack (JIRA)" <ji...@apache.org> on 2009/01/09 01:04:59 UTC

[jira] Commented: (HBASE-1110) Distribute the master role to HRS after ZK integration

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

stack commented on HBASE-1110:
------------------------------

Pertaining to master distribution -- not so much to zk integration (though it has a role to play if a crash) -- log splitting is currently a hacked-up master responsibility that needs to be distributed instead so splits are run promptly.  Also, our current split code does not survive a master crash.  In ZK we can keep record of logs processed so on resumption, a distributed splitting process can resume where it last left off.

> Distribute the master role to HRS after ZK integration
> ------------------------------------------------------
>
>                 Key: HBASE-1110
>                 URL: https://issues.apache.org/jira/browse/HBASE-1110
>             Project: Hadoop HBase
>          Issue Type: Improvement
>            Reporter: Andrew Purtell
>            Priority: Minor
>
> 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 is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.