it's getting difficult to manage all my different databases.
it's getting difficult to manage all my different databases.
Anyway, closest to to low-latency part would be NonStop or OpenVMS clusers across redundant, leased lines. They're fast, scale well at HW level, use ACID databases, and high-availability. Commonly used in transaction processing. One VMS cluster survived 9/11 attack without losing a single transaction. NonStop does up to five 9's. Id be interested in the CAP analysis of these older methods.
Quorum across some data centers is fast enough that it's not hard to manage in new applications.
It's similar to FoundationDB (the Apple product you're referring to) in that it's an SQL database layered on top of a K/V store. It's based on some clever technology to accomplish distributed transactions, strong consistency and high availability, and is looking very promising.
MemSQL for blazing fast distributed full SQL database with cross-datacenter replication and in-memory rowstore + disk-based columnstore.
ScyllaDB for Cassandra rewritten in C++ for blazing fast dynamo-style multi-master multi-datacenter disk-based wide-column database.
I'll also throw in AMPS (by 60East) as the best messaging platform that supports innovative SQL and real-time state-of-the-world queries on it's message streams (instead of using that rabbitmq or kafka crap).
Dynomite for production proven, limitless scale for Redis.
Provides ability to Redis for both in-memory and on-disk workloads.
Dynamo-inspired linearly scalable, shared nothing multi-master architecture. Pairs well with Cassandra.
Supports pluggable backends (ex. RocksDB).
Been in production 2+ years. One of the larger clusters handles over 3.6 million sustained ops/sec in production, every day.
The benefit of Dynomite's support for the Redis API + protocol is a.) you can use any Redis client and b.) the same code can be used for standalone Redis on your laptop and on a distributed Dynomite cluster.
Also you were a speaker at Data Layer right?
There are two answers to your first question.
1. Dynomite pairs well with Cassandra. At scale, Cassandra is not a speed deamon when it comes to reads. Dynomite helps to improve Cassandra's read performance.
2. The use case for Dynomite as the primary database is for workloads that require high throughput and low latency. In other words, Dynomite delivers consistently lower latency at any scale.
For open-source fast and clean messaging, I'd recommend NATS, they recently built NATS streaming that builds on top of the pub/sub to include kafka like persistence - http://nats.io/
I don't think nats can be used like I said by looking at the docs.
What are you looking to do? Sharding for what? Data size? Throughput?
You can have (open-source or free) and develop without community (i think like chrome does that).
The question is: is it worth it ? Without vc-money-cash it's a little hard AND time-consuming.