ARCHITECTURE OF HBASE 3 COMPONENTS OF HBASE - 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. 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. 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 –
Can store large data sets
Database can be shared
Cost-effective from gigabytes to petabytes
High availability through failover and replication
Disadvantages of HBase –
No support SQL structure
No transaction support
Sorted only on key
Memory issues on the cluster
Comparison between HBase and HDFS :
HBase provides low latency(Low latency is the ability of
a computing system or network to provide responses with minimal delay) access while HDFS provides high latency operations.
HBase supports random read and writes while HDFS
supports Write once Read Many times.
HBase is accessed through shell commands, Java API,
REST, while HDFS is accessed through MapReduce jobs. FEATURES OF HBASE ARCHITECTURE :
Distributed and Scalable: HBase is designed to be distributed and scalable,
which means it can handle large datasets and can scale out horizontally by adding more nodes to the cluster. Column-oriented Storage: HBase stores data in a column-oriented manner, which means data is organized by columns rather than rows. This allows for efficient data retrieval and aggregation. Hadoop Integration: HBase is built on top of Hadoop, which means it can leverage Hadoop’s distributed file system (HDFS) for storage and MapReduce for data processing. Consistency and Replication: HBase provides strong consistency guarantees for read and write operations, and supports replication of data across multiple nodes for fault tolerance. Built-in Caching: HBase has a built-in caching mechanism that can cache frequently accessed data in memory, which can improve query performance. Compression: HBase supports compression of data, which can reduce storage requirements and improve query performance. Flexible Schema: HBase supports flexible schemas, which means the schema can be updated on the fly without requiring a database schema migration.