sql >> Database >  >> NoSQL >> MongoDB

MongoDB:verzameling handmatig vergrendelen en ontgrendelen

De collectie handmatig vergrendelen is niet ondersteund in MongoDB-transacties .

Wat je hebt beschreven is een pessimistische vergrendeling gedrag. Waar geselecteerde documenten worden vergrendeld totdat de transactie wordt vastgelegd of teruggedraaid, wat mogelijk deadlocks kan veroorzaken .

MongoDB Transactions maakt gebruik van Optimistic Locking . Het is een strategie waarbij een intern versienummer wordt vastgelegd wanneer document(en) worden gelezen. Wanneer het document/de documenten worden teruggeschreven, controleer dan of de versie niet is gewijzigd (door andere processen buiten de transactie).

Als de versie van het document afwijkt van de versie die aan het begin van de transactie is vastgelegd, wordt de transactie afgebroken en kan het opnieuw worden geprobeerd (afhankelijk van de vereisten).

Zie ook Handleiding MongoDB-transacties voor meer informatie.

Aanvullende informatie:Transacties met meerdere documenten zijn beschikbaar in MongoDB v4+. MongoDB v4.0.0-rc0 (Release Candidate) werd uitgebracht op 23 mei 2018.




  1. Dubbele rijen aan de linkerkant krijgen, doe mee aan Birt-rapporten

  2. Redis serviceStack gepoolde verbindingsclient

  3. Matrix invoegen in bestaand document

  4. MongoDB Aggregatie met $sample erg traag