First, HBase Architecture
II. client clients in the HBase schema
The client has several functions:
1. Access entry for the entire hbase cluster;
2. Use the HBase RPC mechanism to communicate with Hmaster and hregionserver;
3. Use Hmaster to communicate for management class operation;
4. Data read and write operations with Hregionserver;
5. Contains an interface that accesses HBase and maintains the cache to expedite access to hbase. III. Coordination of service components zookeeper
The role of zookeeper is as follows:
1. Ensure that there is only one hmaster in the cluster at any time;
2. Store all the hregion of the address entry;
3. Real-time monitoring of Hregionserver's on-line and offline information, and real-time notification to hmaster;
4. Store the schema and table metadata for hbase;
5. Zookeeper Quorum store-root-table address, hmaster address. Four, the main node Hmaster
The main functions of Hmaster are as follows:
1. Hmaster No single node problem, HBase can start multiple hmaster, through the zookeeper Master election mechanism to ensure that there is always a master running, mainly responsible for the management of table and region.
How to start multiple hmaster.
Starting with hbase-daemons.sh, proceed as follows: 1) in the hbase/conf directory edit backup-masters;2) edit the contents for their host name; 3) after saving, execute the following command: bin/hbase-daemons.sh Start Master-backup.
2. Manage user's additions and deletions to the table;
3. Manage Hregionserver load Balancing, adjust region distribution (in the command line there is a tools,tools this group command is actually all things master do);
4. Region split, responsible for the distribution of the new region;
5. After the hregionserver outage, responsible for the failure hregionserver on the region migration work. v. Region node Hregionserver
The functions of Hregionserver are as follows:
1. Maintain hregion, process hregion IO request, read and write data to HDFs file system;
2. Responsible for the hregion that become too large during the operation of the slicing;
3. Client access to data on HBase does not require master involvement (addressing access to zookeeper and hregionserver, data read-write access Hregionserver), Hmaster only maintains the metadata information for table and region, and the load is low. Vi. The relationship between HBase and zookeeper
1. HBase relies on zookeeper
First Hmaster and Regionserver both need and zookeeper interaction, because regionserver on-line also need to interact, then zookeeper know to tell Hmaster, While offline or disconnected zookeeper know also told Hmaster, while Hmaster also manages Regionserver,hmaster also writes region data on HDFs.
2. HBase manages zookeeper instances by default, such as starting or stopping zookeeper;
3. Hmaster and Hregionserver will be registered with zookeeper when starting;
4. The introduction of zookeeper makes the Hmaster no longer a single point of failure.