sql >> Database >  >> NoSQL >> MongoDB

Wat betekende dat MongoDB vóór v4 niet ACID-compatibel was?

Het is eigenlijk niet correct dat MongoDB niet ACID-compatibel is. Integendeel, MongoDB is ACID-compilant op documentniveau .

Elke update van een enkel document is

  • Atomic:het is volledig voltooid of niet
  • Consistent:geen enkele lezer zal een "gedeeltelijk toegepaste" update zien
  • Geïsoleerd:nogmaals, geen enkele lezer zal een "vuile" tekst zien
  • Duurzaam:(met de juiste zorg voor schrijven)

Wat MongoDB niet heeft, zijn transacties -- dat wil zeggen updates van meerdere documenten die kunnen worden teruggedraaid en die ACID-compatibel zijn.

Houd er rekening mee dat u transacties kunt bouwen bovenop de ACID-compatibele updates voor een enkel document, door gebruik te maken van een vastlegging in twee fasen.



  1. Promoot subvelden naar het hoogste niveau in projectie zonder alle sleutels op te sommen

  2. Redis-transacties

  3. Voeg twee array-velden samen in mongoDB

  4. Wat doet Redis als het geheugen vol raakt?