1. Yes the region servers can absolutely work while the master is down (for a while). Master is mostly there for administrative clean up duties ie, balancing, assigning and creating tables. Additionally there can be more than one master process running at a time. There's a leader election that takes place in zookeeper and when a master goes down any backup masters will elect a new functioning master.
2. We do use zookeeper for locks. 2.1 Trunk and 0.95.0 all use zookeeper for locking table operations. See HBASE-7305 as Ted suggests. 2.2 Row locks exposed to the user don't use zookeeper since only one region server is ever responsible for a row. With that said row locks are being removed in HBASE-7315 since they didn't provide the guarantees that some users were expecting (locks didn't survive region move or server restart) On Mon, Apr 8, 2013 at 9:22 AM, Ted Yu <[email protected]> wrote: > Brady: > Hopefully Nicolas answered your questions. > > We do use zookeeper for coordinating table schema changes. See the > following JIRA: > HBASE-7305. ZK based Read/Write locks for table operations > > Cheers > > On Mon, Apr 8, 2013 at 8:34 AM, Nicolas Liochon <[email protected]> wrote: > > > HBASE-5541 is about rowlock. The master plays no role in this. This lock > > does not have to be distributed, because, in bigtable/hbase architecture, > > the rows are allocated to a single region / region server. This makes > > things faster. > > > > Nicolas > > > > > > On Mon, Apr 8, 2013 at 5:27 PM, Brady Zhong <[email protected] > > >wrote: > > > > > Hi Nicolas, > > > > > > Thanks for your explanation. I know HBase uses ZeeKeeper as coordinated > > > service but not a lock management service like Chubby. Like HBASE-5541 > > > states, it seems the RegionServer controls the whole write process > > > including providing row lock, region lock etc.. So I wonder why we > don't > > > use high available service like ZooKeeper creating, managing and > > releasing > > > lock? > > > > > > > > > Brady > > > > > > On Mon, Apr 8, 2013 at 11:13 PM, Nicolas Liochon <[email protected]> > > > wrote: > > > > > > > Hi, > > > > > > > > 1. Yes. Client applications can start/read/write even when there is > no > > > > master. > > > > 2. HBase already uses ZooKeeper. > > > > > > > > You may want to have to look at the hbase reference guide ( > > > > http://hbase.apache.org/book.html). > > > > > > > > Nicolas > > > > > > > > > > > > On Mon, Apr 8, 2013 at 4:39 PM, Brady Zhong < > [email protected] > > > > >wrote: > > > > > > > > > Hi all, > > > > > > > > > > My name is Brady Zhong, a college student using HBase to develop > our > > > own > > > > > project. Currently I confronted with a problem. Since we need some > > kind > > > > of > > > > > high availability, we hope HBase can keep available even though the > > > > HMaster > > > > > goes down. Here're my questions: > > > > > > > > > > 1. Can HBase work during the node failure of HMaster? Can users > write > > > or > > > > > read the database before the switch and recovery of HMaster? > > > > > 2. Why not use Zookeeper as distributed lock service for HBase, > like > > > > Chubby > > > > > for Google Big Table? > > > > > > > > > > Thanks very much for any help in advance. > > > > > > > > > > > > > > > Best regards, > > > > > Brady Zhong > > > > > > > > > > > > > > >
