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
Redis Software
Score 8.4 out of 10
N/A
Redis is an open source in-memory data structure server and NoSQL database.
N/A
Pricing
Apache HBase
Redis Software
Editions & Modules
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
HBase
Redis Software
Free Trial
No
Yes
Free/Freemium Version
No
Yes
Premium Consulting/Integration Services
No
No
Entry-level Setup Fee
No setup fee
Optional
Additional Details
—
—
More Pricing Information
Community Pulse
Apache HBase
Redis Software
Features
Apache HBase
Redis Software
NoSQL Databases
Comparison of NoSQL Databases features of Product A and Product B
HBase is well suited for streaming ingest, fast lookups, massive datasets, data warehouse lookup tables, RDBMS replacement, MongoDB replacement, key-value store, data scans, logs, JSON storage and some binary storage. My preferred use case is for storing data points like time series or data produced by sensors. I often use HBase when I need data available immediately and I am not looking for transactions. This is a great store for really wide tables with tons of columns. It is also great if you are not sure what type of data you are going to have. It really excels at sparse data.
Perfect solution for caching needs. If you have a bottleneck due to frequent data access to your database, then Redis can really help you by diverting those traffic away from your database. Its key/value pair structure also makes data lookup very efficient, providing excellent performance.
Easy for developers to understand. Unlike Riak, which I've used in the past, it's fast without having to worry about eventual consistency.
Reliable. With a proper multi-node configuration, it can handle failover instantly.
Configurable. We primarily still use Memcache for caching but one of the teams uses Redis for both long-term storage and temporary expiry keys without taking on another external dependency.
Fast. We process tens of thousands of RPS and it doesn't skip a beat.
Redis is super fast but it comes with a cost. Whole dataset resides in RAM. So it can be costly as primary memory is more costly, then secondary ones.
Persistence issues: To achieve it, Redis uses a memory dump to create a persistence snapshot, that's cool. But it requires some Linux Kernel tweaking to avoid performance degradation while the Redis server process is forking. This further causes latency.
Master-slave structure side effect: Master-slave architecture comes with its own side effects. Please note that there will be only one master with multiple slaves for replication. All writing goes to the master, which creates more load on the master node. So, when the master goes down, the whole architecture does.
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.
We will definitely continue using Redis because: 1. It is free and open source. 2. We already use it in so many applications, it will be hard for us to let go. 3. There isn't another competitive product that we know of that gives a better performance. 4. We never had any major issues with Redis, so no point turning our backs.
It is quite simple to set up for the purpose of managing user sessions in the backend. It can be easily integrated with other products or technologies, such as Spring in Java. If you need to actually display the data stored in Redis in your application this is a bit difficult to understand initially but is possible.
The support team has always been excellent in handling our mostly questions, rarely problems. They are responsive, find the solution and get us moving forward again. I have never had to escalate a case with them. They have always solved our problems in a very timely manner. I highly commend the support team.
Compared NoSQL databases with traditional databases for faster retrieval and consistency. As MongoDB is a NoSQL supports dynamic fields, however, query performance is bad for aggregations and added maintenance. When compared with MySQL and Teradata, it could not scale up as fast as Hbase and added cost involved to it. HBase can be easily scalable to a huge volume of records, have a faster lookup and provides consistency
UI isn't that great compared to the other competitors. The management of our memcached cluster was becoming pretty complicated as the application grew in size. Redis is a much better option compared to memcached. Redis is bit unreliable compared to the alternative RabbitMQ especially when it needs to be integrated with Celery.
Existing tools like Redisson that were built over Redis reduced dev time in solving challenging problems, which had a positive impact on ROI.
We initially misused Redis for persistent storage which had a negative impact on ROI because we were paying a lot for inactive users.
The increased performance we achieved using Redis in areas like locking helped us improve the performance of our system reducing the likelihood of system timeouts.