sql >> Databasteknik >  >> NoSQL >> MongoDB

Vad betydde egentligen att MongoDB inte var ACID-kompatibel före v4?

Det är faktiskt inte korrekt att MongoDB inte är ACID-kompatibelt. Tvärtom, MongoDB är ACID-kompilerande på dokumentnivå .

Varje uppdatering av ett enskilt dokument är

  • Atomic:antingen fullbordas den helt eller så gör den inte det
  • Konsekvent:ingen läsare kommer att se en "delvis tillämpad" uppdatering
  • Isolerat:återigen, ingen läsare kommer att se en "smutsig" läsning
  • Tålig:(med lämplig skrivfråga)

Vad MongoDB inte har är transaktioner -- det vill säga uppdateringar av flera dokument som kan återställas och är ACID-kompatibla.

Observera att du kan bygga transaktioner ovanpå de ACID-kompatibla uppdateringarna till ett enda dokument, genom att använda två-fas commit.



  1. Mongodb, samlad fråga med $lookup

  2. Hur förbättrar jag Redis-serverns CPU-användning?

  3. förstå MongoDB cachesystem

  4. Max och min i mongodb