I have done a Q&A with InfoQ on similarities between Distributed Caches and NoSQL Stores. Read it here.
I have done a Q&A with InfoQ on similarities between Distributed Caches and NoSQL Stores. Read it here.
I have been doing some NoSQL research lately. The first fruit of that work was a guest post on myNoSQL, Ehcache: Distributed Cache or NoSQL Store, which crisply distinguished between a Distributed Cache and NoSQL Stores.
In this article I am going to delve into the suitability of each for various technical use cases. I use the word “technical” because a usual use case is a business use case. Here we are interested in a set of features that allow a certain usage. In a follow up I hope to create a second, more business use case oriented table.
I welcome feedback on this, particularly from those with production experience.
| Technical Use Case | Distributed Cache | NoSQL Key Value | NoSQL Columnar | NoSQL Graph | NoSQL Document |
| Database Offload | Excellent | Poor (1) | Poor (1) | Poor (1) | Poor (1) |
| Database Replacement | Poor (2) | Poor (3) | Poor (3) | Poor (3) | Poor (3) |
| Weak Consistency Caching | Excellent | Average (2) | Average | Poor | Poor |
| Eventual Consistency Caching | Excellent (4) | Average (5) | Average (5) | Average (5) | Average (5) |
| Strongly Consistent Caching | Excellent | Poor | Poor | Poor | Poor |
| ACID Transactional Caching | Excellent | Poor | Poor | Poor | Poor |
| Low Latency Data Access | Excellent | Average (5) | Average (5) | Average (5) | Average (5) |
| Big Data (6) | Poor | Excellent | Excellent | Excellent | Excellent |
| Big Memory (7) | Excellent (8) | Poor | Poor | Poor | Poor |
Notes