Architecture of HBase



Prerequisites –
Introduction to Hadoop
, Apache HBase
HBase architecture has 3 main components: HMaster, Region Server, Zookeeper.


Figure – Architecture of HBase

All the 3 components are described below:



  1. HMaster –
    The implementation of Master Server in HBase is HMaster. It is a process in which regions are assigned to region server as well as DDL (create, delete table) operations. It monitor all Region Server instances present in the cluster. In a distributed environment, Master runs several background threads. HMaster has many features like controlling load balancing, failover etc.
  2. Region Server –
    HBase Tables are divided horizontally by row key range into Regions. Regions are the basic building elements of HBase cluster that consists of the distribution of tables and are comprised of Column families. Region Server runs on HDFS DataNode which is present in Hadoop cluster. Regions of Region Server are responsible for several things, like handling, managing, executing as well as reads and writes HBase operations on that set of regions. The default size of a region is 256 MB.
  3. Zookeeper –
    It is like a coordinator in HBase. It provides services like maintaining configuration information, naming, providing distributed synchronization, server failure notification etc. Clients communicate with region servers via zookeeper.

Advantages of HBase –



  1. Can store large data sets
  2. Database can be shared
  3. Cost-effective from gigabytes to petabytes
  4. High availability through failover and replication

Disadvantages of HBase –

  1. No support SQL structure
  2. No transaction support
  3. Sorted only on key
  4. Memory issues on the cluster

Camparison between HBase and HDFS:

  • HBase provides low latency access while HDFS provide high latency operations.
  • HBase supports random read and write while HDFS supports Write once Read Many times.
  • HBase is accessed through shell commands, Java API, REST, Avro or Thrift API while HDFS is accessed through MapReduce jobs.

Note – HBase is extensively used for online analytical operations, like in banking applications such as real-time data updates in ATM machines, HBase can be used.



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.