[ https://issues.apache.org/jira/browse/HDFS-3077?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13229518#comment-13229518 ]
Henry Robinson commented on HDFS-3077: -------------------------------------- bq. Also, I don't think ZAB is the right tool for this in any case. You have a single writer, which can therefore act as a sequencer on the entries. You just need to broadcast to an ensemble, and wait for quorum responses, as I outlined above for BookKeeper. I think ZAB, or a protocol with an equivalent set of guarantees, is a necessary and sufficient tool for the job. Although there is a single writer at any time, the complexity of these protocols arises when that writer might fail. Otherwise, we could just wheel out 2PC and go home. Sequencing writes between different writers is the hard part. BookKeeper seems to do this by using ZK to enforce mutual exclusion, which means at its heart it too relies on a consensus protocol to cope with these tricky failure cases. This makes it a very legitimate point in the design space, but one that shares plenty with the proposal here. > Quorum-based protocol for reading and writing edit logs > ------------------------------------------------------- > > Key: HDFS-3077 > URL: https://issues.apache.org/jira/browse/HDFS-3077 > Project: Hadoop HDFS > Issue Type: New Feature > Components: ha, name-node > Reporter: Todd Lipcon > Assignee: Todd Lipcon > > Currently, one of the weak points of the HA design is that it relies on > shared storage such as an NFS filer for the shared edit log. One alternative > that has been proposed is to depend on BookKeeper, a ZooKeeper subproject > which provides a highly available replicated edit log on commodity hardware. > This JIRA is to implement another alternative, based on a quorum commit > protocol, integrated more tightly in HDFS and with the requirements driven > only by HDFS's needs rather than more generic use cases. More details to > follow. -- 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