NoSQL HBase

NoSQL HBase, also known as Hadoop Database, is a NoSQL database running on top of Hadoop. This distributed database is an open-source project and is based on Bigtable, as it borrows multiple traits from Google's data storage system. HBase is an important part of the Apache Hadoop project, as it runs on the Hadoop Distributed File System (HDFS) in order to offer the main advantages of Google's Bigtable in a Hadoop environment. It scales linearly to handle huge data sets, while combining data sources that use a wide variety of schemas and structures. Among the reasons why it is being used by many large companies, such as Adobe and Facebook, is because it provides similar features to MapReduce, with the mention that it is faster.

Advantages

  • It is an automated environment that supports automatic partitioning, sharding, and failover
  • Offers a high real-time efficiency, including random and fast read/write operations and low latency for data reading/processing
  • Flexible and consistent when dealing with a high volume of requests
  • Data compression is supported, therefore HBase is ideal to store huge amounts of sparse data
  • Queries are optimized efficiently, as it is compatible with multiple filters, including BlockCache and Bloom
  • It can be integrated with Java, Thrift, REST, MapReduce, Hive, Pig, Avro etc. APIs and applications
  • Scaling up is not necessary, as HBase can make use of new nodes, meaning that it can be expanded effortlessly
  • It can handle large quantities of stored data faster than a conventional relational database management system

Disadvantages

  • CPU and memory hog, so it requires more servers, leading to higher maintenance costs
  • Partial keys are not entirely supported, while indexing is also not supported by default
  • It does not support good security features, like authentication and permissions
  • HBase has a Single Point of Failure (SPOF), so when HMaster is down, the whole cluster of nodes is down and requires a lot of time to get back up
  • SQL scripting is not supported, so although it is ideal for sparse data, HBase should not be used for transactions

Components

  • Region Server
  • HMaster
  • ZooKeeper

Development tools

  • HareDB HBase Client
  • hbaseexplorer
  • HBase Manager
  • HareDB Data Model Management
  • Toad
Scroll to Top