Pg_paxos: High Availability Data Replication for PostgreSQL
citusdata.com
citusdata.com
Per Google's "Paxos Made Live" paper [1], which opens with the wonderful understatement "Despite the existing literature in the field, building such a database proved to be non-trivial...", and finishes with "Despite the large body of literature in the field, algorithms dating back more then 15 years, and experience of our team (one of us has designed a similar system before and the others have built other types of complex systems in the past), it was significantly harder to build this system then originally anticipated..."
IOW if Google writes a 15-page paper about a problem being hard, you are going to need to provide a large body of evidence that your implementation is correct before I'll go near it.
[1]: http://www.cs.cmu.edu/~15-440/READINGS/paxos-made-live.pdf
But on Google thing. It is a good point, however, that was also 10 years ago. Sometimes things get easier in technology in that time frame.
[1] https://bookkeeper.apache.org/index.html
Edit: It would be a nice to tell me why my my post have been downvoted. BookKeeeper is not a competing solution, but something that was written for that purpose and they could utilize it.
video: "Keynote by Umur Cubukcu of Citus Data at PGConf Silicon Valley 2015" : https://youtu.be/_nun2S6EdWo?t=513
---
CitusDB 5.0 Pre-Beta Signup
"CitusDB 5.0 transforms PostgreSQL into a horizontally scalable, distributed database. It enables you to perform both real-time inserts/updates and multi-core, parallel analytics, in a way that is transparent to the application. It will:
- Allow you to deploy CitusDB as a standard PostgreSQL extension
- Be compatible with the latest version of PostgreSQL, v9.5
- Have an open source community edition "
Both our open source extensions and the (currently) proprietary CitusDB product are heavily used in production. For example, https://blog.cloudflare.com/scaling-out-postgresql-for-cloud...
We're working on improving all our products, and we welcome your feedback.
Could you elaborate more on what you'd like to see? Please also feel free to use GitHub issues on our open source projects or hit me directly at ozgun at citusdata.com.
1. http://www.postgresql.org/docs/devel/static/functions-event-...
Stability, reliability, and performance are #1
Distributed stuff done right is difficult (as seen by Aphyr's Call Me Maybe tests, how few products survived despite high claims in their marketing).
Others that failed redeemed themselves and fixed issues after the results came. I think etcd and Consul devs did that.
So it's meaningless even bringing it up.
Extensions like this are how Postgres has traditionally handled interesting opinionated technologies. The mailing lists will mull over the various implementations, scratch their chin a lot, and finally come to a conclusion after much discussion. It's why the database is so strong and stable, and why some seemingly obvious features take a while to get into the core database.