Need advice about which tool to choose?Ask the StackShare community!

Hazelcast

226
336
+ 1
53
Redis

38.3K
28.1K
+ 1
3.9K
Add tool

Hazelcast vs Redis: What are the differences?

Hazelcast: Clustering and highly scalable data distribution platform for Java. With its various distributed data structures, distributed caching capabilities, elastic nature, memcache support, integration with Spring and Hibernate and more importantly with so many happy users, Hazelcast is feature-rich, enterprise-ready and developer-friendly in-memory data grid solution; Redis: An in-memory database that persists on disk. Redis is an open source, BSD licensed, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.

Hazelcast and Redis belong to "In-Memory Databases" category of the tech stack.

"High Availibility" is the primary reason why developers consider Hazelcast over the competitors, whereas "Performance" was stated as the key factor in picking Redis.

Hazelcast and Redis are both open source tools. Redis with 37.1K GitHub stars and 14.3K forks on GitHub appears to be more popular than Hazelcast with 3.15K GitHub stars and 1.15K GitHub forks.

reddit, Instacart, and Slack are some of the popular companies that use Redis, whereas Hazelcast is used by Yammer, Seat Pagine Gialle, and Stormpath. Redis has a broader approval, being mentioned in 3239 company stacks & 1732 developers stacks; compared to Hazelcast, which is listed in 25 company stacks and 15 developer stacks.

Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of Hazelcast
Pros of Redis
  • 9
    High Availibility
  • 6
    Distributed Locking
  • 5
    Distributed compute
  • 5
    Sharding
  • 4
    Load balancing
  • 3
    Map-reduce functionality
  • 3
    Publish-subscribe
  • 3
    Sql query support in cluster wide
  • 2
    Written in java. runs on jvm
  • 2
    Simple-to-use
  • 2
    Multiple client language support
  • 2
    Rest interface
  • 2
    Optimis locking for map
  • 1
    Easy to use
  • 1
    Performance
  • 1
    Super Fast
  • 1
    Admin Interface (Management Center)
  • 1
    Better Documentation
  • 877
    Performance
  • 535
    Super fast
  • 511
    Ease of use
  • 442
    In-memory cache
  • 321
    Advanced key-value cache
  • 190
    Open source
  • 179
    Easy to deploy
  • 163
    Stable
  • 153
    Free
  • 120
    Fast
  • 40
    High-Performance
  • 39
    High Availability
  • 34
    Data Structures
  • 32
    Very Scalable
  • 23
    Replication
  • 20
    Great community
  • 19
    Pub/Sub
  • 17
    "NoSQL" key-value data store
  • 14
    Hashes
  • 12
    Sets
  • 10
    Sorted Sets
  • 9
    Lists
  • 8
    BSD licensed
  • 8
    NoSQL
  • 7
    Async replication
  • 7
    Integrates super easy with Sidekiq for Rails background
  • 7
    Bitmaps
  • 6
    Open Source
  • 6
    Keys with a limited time-to-live
  • 5
    Strings
  • 5
    Lua scripting
  • 4
    Awesomeness for Free!
  • 4
    Hyperloglogs
  • 3
    outstanding performance
  • 3
    Runs server side LUA
  • 3
    Networked
  • 3
    LRU eviction of keys
  • 3
    Written in ANSI C
  • 3
    Feature Rich
  • 3
    Transactions
  • 2
    Data structure server
  • 2
    Performance & ease of use
  • 1
    Existing Laravel Integration
  • 1
    Automatic failover
  • 1
    Easy to use
  • 1
    Object [key/value] size each 500 MB
  • 1
    Simple
  • 1
    Channels concept
  • 1
    Scalable
  • 1
    Temporarily kept on disk
  • 1
    Dont save data if no subscribers are found
  • 0
    Jk

Sign up to add or upvote prosMake informed product decisions

Cons of Hazelcast
Cons of Redis
  • 3
    License needed for SSL
  • 12
    Cannot query objects directly
  • 1
    No WAL
  • 1
    No secondary indexes for non-numeric data types

Sign up to add or upvote consMake informed product decisions

What is Hazelcast?

With its various distributed data structures, distributed caching capabilities, elastic nature, memcache support, integration with Spring and Hibernate and more importantly with so many happy users, Hazelcast is feature-rich, enterprise-ready and developer-friendly in-memory data grid solution.

What is Redis?

Redis is an open source, BSD licensed, advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Hazelcast?
What companies use Redis?
See which teams inside your own company are using Hazelcast or Redis.
Sign up for Private StackShareLearn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Hazelcast?
What tools integrate with Redis?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

Nov 20 2019 at 3:38AM

OneSignal

+8
7
3735
Jun 6 2019 at 5:11PM

AppSignal

+9
15
1076
+17
32
28379
+29
15
11064
What are some alternatives to Hazelcast and Redis?
Apache Spark
Spark is a fast and general processing engine compatible with Hadoop data. It can run in Hadoop clusters through YARN or Spark's standalone mode, and it can process data in HDFS, HBase, Cassandra, Hive, and any Hadoop InputFormat. It is designed to perform both batch processing (similar to MapReduce) and new workloads like streaming, interactive queries, and machine learning.
Cassandra
Partitioning means that Cassandra can distribute your data across multiple machines in an application-transparent matter. Cassandra will automatically repartition as machines are added and removed from the cluster. Row store means that like relational databases, Cassandra organizes data by rows and columns. The Cassandra Query Language (CQL) is a close relative of SQL.
Memcached
Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering.
Apache Ignite
It is a memory-centric distributed database, caching, and processing platform for transactional, analytical, and streaming workloads delivering in-memory speeds at petabyte scale
RabbitMQ
RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.
See all alternatives
Reviews of Hazelcast and Redis
Review of
Redis

Redis is a good caching tool for a cluster, but our application had performance issues while using Aws Elasticache Redis since some page had 3000 cache hits per a page load and Redis just couldn't quickly process them all in once + latency and object deseialization time - page load took 8-9 seconds. We create a custom hybrid caching based on Redis and EhCache which worked great for our goals. Check it out on github, it's called HybriCache - https://github.com/batir-akhmerov/hybricache.

How developers use Hazelcast and Redis
Cloudcraft uses
Redis

Redis is used for storing all ephemeral (that's data you don't necessarily want to store permanently) user data, such as mapping of session IDs (stored in cookies) to current session variables at Cloudcraft.co. The many datastructures supported by Redis also makes it an excellent caching and realtime statistics layer. It doesn't hurt that the author, Antirez, is the nicest guy ever! These days, I would be really hard pressed to find any situation where I would pick something like Memcached over Redis.

Trello uses
Redis

Trello uses Redis for ephemeral data that needs to be shared between server processes but not persisted to disk. Things like the activity level of a session or a temporary OpenID key are stored in Redis, and the application is built to recover gracefully if any of these (or all of them) are lost. We run with allkeys-lru enabled and about five times as much space as its actual working set needs, so Redis automatically discards data that hasn’t been accessed lately, and reconstructs it when necessary.

Stack Exchange uses
Redis

The UI has message inbox that is sent a message when you get a new badge, receive a message, significant event, etc. Done using WebSockets and is powered by redis. Redis has 2 slaves, SQL has 2 replicas, tag engine has 3 nodes, elastic has 3 nodes - any other service has high availability as well (and exists in both data centers).

Brandon Adams uses
Redis

Redis makes certain operations very easy. When I need a high-availability store, I typically look elsewhere, but for rapid development with the ability to land on your feet in prod, Redis is great. The available data types make it easy to build non-trivial indexes that would require complex queries in postgres.

Kent Steiner uses
Redis

I use Redis for cacheing, data storage, mining and augmentation, proprietary distributed event system for disparate apps and services to talk to each other, and more. Redis has some very useful native data types for tracking, slicing and dicing information.

Vital Labs, Inc. uses
Hazelcast

HazelCast is the foundation for the distributed system that hosts our APIs and intelligent workflows. We wrap the core HazelCast functions in Clojure protocols to implement micro-services on top of a coherent, single-process instance per virtual node.