4 ms·
I like thinking about the best tools for the job, or "jobs to be done" as Clay Christensen would put it. But why wouldn't you use MongoDB for things that requir
by gqewogpdqa 6y ago
I like thinking about the best tools for the job, or "jobs to be done" as Clay Christensen would put it. But why wouldn't you use MongoDB for things that require ACID? MongoDB has had cross-collection ACID transactions since 4.0 (years ago) and in-collection transactions (less useful, of course) since a long time before that.
PostgreSQL is indeed a pretty awesome database. That said, the JSON support is just so very painful. It's nice that it supports indexes on JSON, though, once you get through the syntax.
Thanks for your post.
- kstrauser 6y agoAccording to Jepsen[0], as of 9 months ago: > Jepsen evaluated MongoDB version 4.2.6, and found that even at the strongest levels of read and write concern, it failed to preserve snapshot isolation. Instead, Jepsen observed read skew, cyclic information flow, duplicate writes, and internal consistency violations. I would not use that where data integrity is mission critical. [0] https://jepsen.io/analyses/mongodb-4.2.6 https://jepsen.io/analyses/mongodb-4.2.6
- jd_mongodb 6y agoFYI: Same report update: 2020-05-26: MongoDB identified a bug in the transaction retry mechanism which they believe was responsible for the anomalies observed in this report; a patch is scheduled for 4.2.8.
- gqewogpdqa 6y agoLots of databases have transaction bugs which they hurriedly rush out patches to. MySQL, Oracle, SQL*Server, even the cloud databases like DynamoDB, CosmosDB, Aurora. Looks like MongoDB fixed this one.
- justinclift 6y agoCool. Hopefully that means it passes the next round of Jepson testing. :)
- gqewogpdqa 6y agoIndeed! That would be a great confirmation.
- richardwhiuk 6y agoMongoDB's licensing situation is much more of a pain.