4 ms·
The RDBMS space has been addressing how to do this with distributed systems for quite some time as well (a couple of decades at least), and at least the more so
by cbsmith 15y ago
The RDBMS space has been addressing how to do this with distributed systems for quite some time as well (a couple of decades at least), and at least the more sophisticated systems tend to support a fairly broad set of approaches to addressing this problem (and means of expressing those choices quite succinctly).
- rdtsc 15y ago> The RDBMS space has been addressing how to do this with distributed systems for quite some time as well So how do you do what they did with MySQL. Can you build an always available multi-master cluster that is available, partition tolerant and eventually consistent?
- aphyr 15y agoYes: SimpleDB, HBase, Cassandra, Riak, Voldemort.
- rdtsc 15y ago> Yes: SimpleDB, HBase, Cassandra, Riak, Voldemort. Flagged your post since you obviously didn't even bother reading 2 sentences before replying.
- aphyr 15y agoSorry, I must have misunderstood. You wrote: Can you build an always available multi-master cluster that is available, partition tolerant and eventually consistent? These are exactly the properties of Dynamo. Could you elaborate more on what you were looking for?
- rdtsc 15y agoI wrote: "So how do you do what they did with MySQL. Can you build an always available multi-master cluster that is available, partition tolerant and eventually consistent?" Obviously in the article they picked Riak. So yes Riak and other Dynamo-type database have those properties. I asked if the properties of Riak+custom eventual consistency code can be achieved with MySQL (as one of the above comments was asking people to maybe not jump to all these fancy and exotic solution when MySQL is available)
- aphyr 15y agoAha. I interpreted "what they did with MySQL" as "What the MySQL team did by writing a successful database", but you meant "what the Bump team did with their application, were it to be on top of MySQL." Got it.
- AaronBBrown 15y agoMySQL Cluster, Percona XtraDB Cluster, Clustrix, Continuent Tungsten Replicator, vitess, and a number of other products are available in the MySQL ecosystem designed around these types of problems.
- rdtsc 15y agoThank you, Aaaron. That's what I was looking for. It seems there is some load balancing / cluster node membership layer on top of MySQL which is used for storage. But I guess, if they are integrated into a single packaged product, then it doesn't matter much (well SQL syntax would have MySQL peculiarities in it). But if you look at the number of lines on top of MySQL (since MySQL was argued to be the understood and established by the grandparent poster) that all these solutions add, would be greater than 1000.
- aphyr 15y agoWhile these are all great products and can provide highly available layers on top of MySQL, only MySQL cluster satisfies rtdsc's requirements, and I have my doubts about its behavior around clocks. In general, the MySQL HA space prefers CP to AP. MySQL Cluster is CP within a cluster. A circularly replicated pair of MySQL Clusters can be considered AP, with limited support for conflict resolution (if I understand correctly, it gets ugly when clocks come into play). http://messagepassing.blogspot.com/2012/03/cap-theorem-and-mysql-cluster.html http://messagepassing.blogspot.com/2012/03/cap-theorem-and-m... Percona is CP. They claim to be CA by sacrificing partition tolerance: in other words, the system is not available when partitioned. http://www.percona.com/doc/percona-xtradb-cluster/intro.html http://www.percona.com/doc/percona-xtradb-cluster/intro.html Clustrix is definitely CP, not AP. If you lose quorum, everything stops. They do an excellent job of being a distributed CP system, though, from what I can tell. http://sergei.clustrix.com/2011/02/mongodb-vs-clustrix-comparison-part-2.html http://sergei.clustrix.com/2011/02/mongodb-vs-clustrix-compa... Continuent Tungsten Replicator has a master-master mode, which is CP. http://availabilitydigest.com/public_articles/0405/continuent_tungsten.pdf http://availabilitydigest.com/public_articles/0405/continuen...