4 ms·
Raft is the secret sauce behind many distributed databases, like CockroachDB, TiDB, Yugabyte, etc.. But to make it scalable and production grade, you have to r
by azurezyq 4y ago
Raft is the secret sauce behind many distributed databases, like CockroachDB, TiDB, Yugabyte, etc..
But to make it scalable and production grade, you have to run multiple Raft operations in parallel and manage them well. E.g., sharding them correctly to make the load balanced and adjusting dynamically.
Here's a pleasant article to read: https://en.pingcap.com/blog/how-tikv-reads-and-writes/ https://en.pingcap.com/blog/how-tikv-reads-and-writes/
- verdverm 4y agoGoogle Spanner is another good implementation to study https://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf https://static.googleusercontent.com/media/research.google.c... > The key enabler of these properties is a new TrueTime API and its implementation. The API directly exposes clock uncertainty, and the guarantees on Spanner’s timestamps depend on the bounds that the implementation provides. If the uncertainty is large, Spanner slows down to wait out that uncertainty. Google’s cluster-management software provides an implementation of the TrueTime API. This implementation keeps uncertainty small (generally less than 10ms) by using multiple modern clock references (GPS and atomic clocks).
- rdtsc 4y ago> Google Spanner is another good implementation to study Doesn't Google Spanner use Paxos instead of Raft? From the link: > Our Paxos implementation supports long-lived leaders with time-based leader leases...
- ryanworl 4y agoThis is ultimately an unimportant distinction. Multi-Paxos and Raft have only minor differences which are only important internally. From the perspective of designing a larger database system like Spanner or CockroachDB, the differences are not material.
- avinassh 4y agothe pingcap article mentions multi-raft, Cockroach DB also does the same thing to reduce chatter and traffic blog post: https://www.cockroachlabs.com/blog/scaling-raft/ https://www.cockroachlabs.com/blog/scaling-raft/