[ https://issues.apache.org/jira/browse/HBASE-24753?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17206109#comment-17206109 ]
Nicholas Jiang commented on HBASE-24753: ---------------------------------------- [~zhangduo], I prefer to recommend the raft library https://github.com/sofastack/sofa-jraft. The benchmark of JRaft could refer to https://www.sofastack.tech/projects/sofa-jraft/benchmark-performance/. > HA masters based on raft > ------------------------ > > Key: HBASE-24753 > URL: https://issues.apache.org/jira/browse/HBASE-24753 > Project: HBase > Issue Type: New Feature > Components: master > Reporter: Duo Zhang > Priority: Major > > For better availability, for moving bootstrap information from zookeeper to > our own service so finally we could remove the dependency on zookeeper > completely. > This has been in my mind for a long time, and since the there is a dicussion > in HBASE-11288 about how to storing root table, and also in HBASE-24749, we > want to have better performance on a filesystem can not support list and > rename well, where requires a storage engine at the bottom to store the > storefiles information for meta table, I think it is the time to throw this > idea out. > The basic solution is to build a raft group to store the bootstrap > information, for now it is cluster id(it is on the file system already?) and > the root table. For region servers they will always go to the leader to ask > for the information so they can always see the newest data, and for client, > we enable 'follower read', to reduce the load of the leader(and there are > some solutions to even let 'follower read' to always get the newest data in > raft). > With this solution in place, as long as root table will not be in a format of > region(we could just use rocksdb to store it locally), the cyclic dependency > in HBASE-24749 has also been solved, as we do not need to find a place to > store the storefiles information for root table any more. -- This message was sent by Atlassian Jira (v8.3.4#803005)