3 ms·
Because Postgres doesn't have any clustering / HA features. So out of the box it doesn't scale well.
by Thaxll 10y ago
Because Postgres doesn't have any clustering / HA features. So out of the box it doesn't scale well.
- chaostheory 10y agoIf you want that you can always use a variant of postgres that does like greenplum, citus, and a few others. They're battle proven. There's also MySQL and its variants as well. Not to mention that are NoSQL alternatives that have a better track record than Mongo like Cassandra.
- hinkley 10y agoAre there NoSQL alternatives that have a worse track record than Mongo?
- chaostheory 10y agoThere probably are, but they just don't enjoy the same level of popularity as Mongo or they'd be scrutinized just as much.
- threeseed 10y agoCassandra, HBase etc had checkered pasts with plenty of their own data loss and inconsistency bugs. Now they are considered two of the most rock solid NoSQL databases. The hatred towards MongoDB really is pretty irrational given just how popular the database is.
- deleted 10y ago[deleted]
- chaostheory 10y agoIt is anything but irrational. https://aphyr.com/posts/322-jepsen-mongodb-stale-reads https://aphyr.com/posts/322-jepsen-mongodb-stale-reads If it isn't already fixed, they need to fix it. I can't vouch for HBase, but Cassandra is stable and reliable now. Cassandra is also easier to scale.
- im_down_w_otp 10y agoFWIW, I don't think Cassandra is particularly any better today semantically than it used to be. Merge conflicts are still at the cell level than the row level, and wall-clock time is still the way that LWW resolution is determined. It let's you mix strongly consistent and eventually consistent data together, which makes no sense. But the difference is that Cassandra is reliably "broken" in those ways, and as a result there are ways of using it which don't lean heavily on those weaknesses. Such as writing only immutable data or isolating all data that will be used in paxos transactions into their own column families by convention, etc. Cassandra more or less behaves exactly as it claims that it does. So you can do a somewhat thorough investigation of its system semantics and know what you can rely on and what you can't. MongoDB doesn't even uphold the system semantics it claims that it has, so it's just broken in weird and esoteric ways that you discover mostly by accident.
- snuxoll 10y agoIt HAS them, just not built-in tooling to make using them easy. 2ndQuadrant's repmgr gets you partway there, I'm really hoping to see them revamp it now that pg_rewind is a thing to make restoring a failed master less of a pain in the butt (this is literally the only reason I don't bother with HA right now, it's usually much easier for me to get the DB back online or restore from a barman backup than deal with replication).
- matwood 10y agoScale to what though? RDBMs can easily handle large loads, have replication, etc... At the point where you need true scaling, you'll have a much better idea of your problem and can solve it appropriately.