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?
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-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
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-compa...
Continuent Tungsten Replicator has a master-master mode, which is CP. http://availabilitydigest.com/public_articles/0405/continuen...
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.
Flagged your post since you obviously didn't even bother reading 2 sentences before replying.
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?
"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)