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
OpenText Vertica
ScoreĀ 9.4Ā outĀ ofĀ 10
N/A
The Vertica Analytics Platform supplies enterprise data warehouses with big data analytics capabilities and modernization. Vertica is owned and supported by OpenText.
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.
Vertica as a data warehouse to deliver analytics in-house and even to your client base on scale is not rivaled anywhere in the market. Frankly, in my experience it is not even close to equaled. Because it is such a powerful data warehouse, some people attempt to use it as a transactional database. It certainly is not one of those. Individual row inserts are slow and do not perform well. Deletes are a whole other story. RDBMS it is definitely not. OLAP it rocks.
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.
Could use some work on better integrating with cloud providers and open source technologies. For AWS you will find an AMI in the marketplace and recently a connector for loading data from S3 directly was created. With last release, integration with Kafka was added that can help.
Managing large workloads (concurrent queries) is a bit challenging.
Having a way to provide an estimate on the duration for currently executing queries / etc. can be helpful. Vertica provides some counters for the query execution engine that are helpful but some may find confusing.
Unloading data over JDBC is very slow. We've had to come up with alternatives based on vsql, etc. Not a very clean, official on how to unload data.
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.
I haven't had any recent opportunity to reach out to Vertica support. From what I remember, I believe whenever I reached out to them the experience was smooth.
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.
Vertica performs well when the query has good stats and is tuned well. Options for GUI clients are ugly and outdated. IO optimized: it's a columnar store with no indexing structures to maintain like traditional databases. The indexing is achieved by storing the data sorted on disk, which itself is run transparently as a background process.
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.