In realtà non è corretto che MongoDB non sia compatibile con ACID. Al contrario, MongoDB è compatibile con ACID a livello di documento .
Qualsiasi aggiornamento a un singolo documento è
- Atomico:o si completa completamente o non lo fa
- Coerente:nessun lettore vedrà un aggiornamento "applicato parzialmente"
- Isolato:ancora una volta, nessun lettore vedrà una lettura "sporca"
- Durevole:(con l'appropriato problema di scrittura)
Quello che MongoDB non ha sono le transazioni -- ovvero aggiornamenti di più documenti di cui è possibile eseguire il rollback e conformi ad ACID.
Tieni presente che puoi creare transazioni in aggiunta agli aggiornamenti compatibili con ACID in un singolo documento, utilizzando il commit in due fasi.