Hacker News new | past | comments | ask | show | jobs | submit login

Postgres doesn't have a builtin clustered mode, or claim to be totally available (and also, incidentally, doesn't guarantee serializability for hot standby replication targets, which is prominently stated in a bright red box that says "warning" in the documentation on serializable isolation, i.e. the first place you would look). It claims to be CP in a single-node configuration (which it is) and aphyr tested it on those claims. Remember, Jepsen isn't about proving that a database can't violate CAP, nor is it trying to say "all databases are crap." It's about verifying the marketing claims and then determining whether there are any mitigating strategies. The fact that many databases make unreasonable marketing claims is unfortunate, but certainly not a requirement.

It's also worth posing this question in reverse: what would happen if these distributed databases were tested in a single-cluster configuration? As noted in the most recent article on Elasticsearch, many of them (e.g. Elasticsearch, Cassandra, and Riak) acknowledge writes before fsync and can therefore lose data due to issues like `kill -9`, power loss, and other exceptional conditions, while Postgres doesn't. For a single-node database this robustness is very important, while he argues that it isn't as important for a distributed one. Because these databases aren't designed to be used as single nodes, aphyr didn't substantially ding them for that. Again, what's important is whether the database does what its documentation says it does when used as its documentation says it should be used.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: