The Apache HBase project's goal is the hosting of very large tables -- billions of rows X millions of columns -- atop clusters of commodity hardware. Apache HBase is an open-source, distributed, versioned, non-relational database modeled after Google's Bigtable.
N/A
Scylla
Score 9.4 out of 10
N/A
ScyllaDB headquartered in Palo Alto offers Scylla, a NoSQL database alternative to Apache Cassandra available in Enterprise and Cloud DBaaS editions.
Hbase is well suited for large organizations with millions of operations performing on tables, real-time lookup of records in a table, range queries, random reads and writes and online analytics operations. Hbase cannot be replaced for traditional databases as it cannot support all the features, CPU and memory intensive. Observed increased latency when using with MapReduce job joins.
Scylla is well suited for high-throughput scenarios where keyed data must be read or written with consistently low latency. It's less appropriate for use cases requiring relational queries, secondary indexes, or more structured data sets.
Stored procedures functionality is not available so it should be implemented.
HBase is CPU and Memory intensive with large sequential input or output access while as Map Reduce jobs are primarily input or output bound with fixed memory. HBase integrated with Map-reduce jobs will result in random latencies.
There's really not anything else out there that I've seen comparable for my use cases. HBase has never proven me wrong. Some companies align their whole business on HBase and are moving all of their infrastructure from other database engines to HBase. It's also open source and has a very collaborative community.
Very easy-to-understand syntax--uses CQL (same as Cassandra), which has many similarities to standard SQL. There are some gotchas, however, that must be known during schema development.
Cassandra os great for writes. But with large datasets, depending, not as great as HBASE. Cassandra does support parquet now. HBase still performance issues. Cassandra has use cases of being used as time series. HBase, it fails miserably. GeoSpatial data, Hbase does work to an extent. HA between the two are almost the same.
Scylla has a quick learning curve (same as Cassandra) compared to other proprietary solutions like BigTable. It supports higher throughput and lower latency that other NoSQL databases like MongoDB, which sacrifice those features for more flexibility and unique features.
As Hbase is a noSql database, here we don't have transaction support and we cannot do many operations on the data.
Not having the feature of primary or a composite primary key is an issue as the architecture to be defined cannot be the same legacy type. Also the transaction concept is not applicable here.
The way data is printed on console is not so user-friendly. So we had to use some abstraction over HBase (eg apache phoenix) which means there is one new component to handle.