I am beginner in MongoDB but read a lot of stuff on net in last week. What I get is MongoDB does not follow ACID principles in true sense or we can say MongoDB is ACID-compliant at the document level.
Now my question is why MongoDB does not follow the acid property across documents/collections like relational. I mean is it intentionally not following them or there is some technical limitation. If it is intentional then why and what extra MonngoDb achieved at the cost of ACID sacrifice ?
Atomicity:- Why Mongo can maintain the atomicity across documents. If it is intentional sacrifice, what is extra MongoDB achieves here at the sacrifice of atomicity ?
Consistency :- I don't care much as i can achieve it at app layer also without much effort
Isolation:- Mongo isolation model is similar to auto commits transaction for relational databases. It internally means like transaction can contain one DML statement which will be auto commit. Why it can't support mutiple statement in a transaction which gets committed in single go and then get visible to other transaction
Durable :- In relational DB, if commit is fired and unfortunately system crash. Oracle can recover once it is back but why Mongo can't as i believe both implements write ahead logs.