Here are the differences:
Point of Distinction |
HBase |
RDBMS |
---|---|---|
Type of Database |
HBase is a distributed database |
RDBMS generally are single node databases |
Row or Column Oriented |
HBase has Column-oriented table schema. |
RDBMS offers Row-oriented table schema. |
Data Type |
Good for both semi-structured data and structured data. |
Good for only structured data. |
Schema Type |
HBase offers Flexible schema meaning we can add columns on the Fly without any overhead. |
RDBMS systems have Fixed schema, although you can modify schema but the operation(alter) is very expensive. |
Sparse Table |
Its columnar schema makes it Good with sparse tables, Which results in a memory efficient database. |
With the fixed schema, the space of each element in the row is fixed which results in the allocation of space for null values in the row too, hence Not optimized for sparse tables. |
Use Cases | OLAP - Online Transaction Processing | Data Discovery, Data Analytics and OLAP System. |
Native Query Language |
Apart from basic DML and lookup commands, HBase doesn't provide a native query language. |
RDBMS provides a powerful query language known as SQL. |
Tables |
The columnar table schema results in Wide tables. |
RDBMS tables are Narrow because of the row based schema. |
Optimized for Joins |
Since HBase doesn’t have a query engine analytics operations such as Joins are generally performed using MR, which are not optimized. [compare to RDBMS joins] |
Native SQL provides optimized for operations i.e. Joins(small, fast ones) etc |
Integration with MR |
HBase has tight integration with MR for data processing applications |
No integration with MR. |
Scalability |
HBase can easily be scaled Horizontally By adding more nodes. |
Hard to share and scale. |
Cost | MySQL is Free, Oracle and MS Server is paid. | it's open source |
Data Size | comparative smaller in GegaBytes/TeraBytes | large can be up to HB - Hexabytes, PB - Petabyte |
Consistency and Partition |
Provides Consistency and Partition tolerance. |
Being a single node system offers Consistency, Availability. [can say partition tolerance too]. |