Hazelcast, Ignite, Aerospike, Redis Cache Comparison


HazelcastIgniteAerospikeRedis
In-memory key-value store

Primary database model – Key-value store

Secondary database models – Document store

Java Language

For open source Apache License 2.0
In-memory computing platform

Distributed database

Java Language,  Java, C#, C++, SQL

For open source Apache License 2.0
In-memory NoSQL Database

Primary database model – Key-value store

Secondary database models – Document store

C Language

For Open Source Apache v2
In-memory NoSQL Database

Primary database model – Key-value store

Secondary database models – Document store

C Language

BSD license
Hazelcast  IMDG  – Distributed In memory Data Store

-In-Memory Computing Features
-DISTRIBUTED CACHING
– Distributed Events
– Distributed Computing(Running thread on multiple JVM)
– Embedded or Client/Server?
– SQL, Distributed SQL
-ACID (Transaction)
-JSON Support

https://docs.hazelcast.com/imdg/4.2/getting-started


https://hazelcast.com/product-features/imdg-comparison/
ACID transactions

MULTI-TIER STORAGE
Hybrid Memory Architecture RAM <–> SSD
(In-Memory, In-Memory + External Database, In-Memory Cache + Native Persistence)

Key-value store Support for Cache

DISTRIBUTED ANSI SQL WITH JOINS

DISTRIBUTED KEY-VALUE STORE

NEAR CACHE

DISTRIBUTED MESSAGING AND EVENTS

Cluster Management

Thin Clients

Distributed Locks

SQL
Aerospike Database 5

-Multi-site Clustering
-consistency
-WAN Replication Cross Data Center
-Ram and/or SSD persistence(Hybrid Memory Architecture)
-The change-notification system informs external systems (in this case, connectors) when records are inserted, modified, or deleted in an Aerospike database(Enterprise Edition).
-Notifying Directly to Connector on Arespike DB changes(Enterprise Edition)
-Security with role management
-Aerospike Expressions and Query(Not SQL need to check)





https://aerospike.com/products/database-platform/
Enterpeise Edition come with lcuster management.

So we don’t have to manage Cluster. Basically kind of cloud solution
Hazel Cast Jet
– Hazelcast Jet is a distributed batch and stream processing framework based on Hazelcast IMDG.


-dataflow programming model
– Batch and Stream of event processing
-two-phase commit
– aggregations
– Predicate
– Filter
-Apache License 2.0
https://github.com/hazelcast/hazelcast-jet
https://jet-start.sh/

For example, you can read data from Kafka and write to IMap with just a few lines of code.


-https://hazelcast.com/product-features/jet-comparison/



SUPPORTED DATA STRUCTURES:
Concurrent Map (Cache)
Distributed Queues and Sets
AtomicLong
AtomicReference
AtomicSequence (ID Generator)
CountDownLatch
Aerospike CacheDB

– All basic cache features
– Cross Data Center Replication
-Notifying Directly to Connector on Arespike DB changes(Enterprise Edition)



https://aerospike.com/products/cachedb/
Redis is single-threaded

-Redis was initially intended to be used in standalone mode

-No automatic discovery of the Redis node. Even add/remove nodes in the cluster we need to do manually. Like dividing namespace index partition to register node into the cluster
NearCache 
– Client will have a local cache.
– So that it can query locally only
instead of going to the HazelCast server
ACID guaranteesMy observation with Redis we have everything that we need.
But thing is that we need to build solutions out of it for us and our customers if required.
And we also need to depend on third-party modules while building solutions.
Management Center (Open Source Edition limited to 3-node clusters)
DISTRIBUTED CACHINGDistributed caching capabilities
DISTRIBUTED COMPUTEDistributed data structures
Distributed LockingKafka Connector
DISTRIBUTED QUERY
CLIENTS
CLOUD AND VIRTUALIZATION SUPPORT(Connectors/clustermangement)
CLUSTER MANAGEMENT
STORAGE
SECURITY SUITE(Not In Open Source)
WAN Replication(Not In Open Source)
https://hazelcast.com/use-cases/redis-replacement/https://ignite.apache.org/docs/latest/indexhttps://aerospike.com/products/product-matrix/Full Feature List https://redis.io/documentation
https://hazelcast.org/compare-with-redis/For Community Edition very basic support not even Kafka connector, no security, no clustering, Cross Datacenter things
,