sql >> Database >  >> NoSQL >> MongoDB

Oplopende getallen maken met mongoDB

http://www.mongodb.org /display/DOCS/How+to+Make+an+Auto+Incrementing+Field

De eerste benadering is het bijhouden van tellers in een zijdocument:

De andere benadering is om optimistisch te lussen en de foutcode van de dup-sleutel van 11000 af te handelen door de id voor het randgeval van botsingen voort te zetten en te verhogen. Dat werkt goed, tenzij er veel gelijktijdige schrijfacties zijn naar een specifieke verzameling.

Maar let op de waarschuwing op die pagina:

Andere dingen om te overwegen:

  • Tijdstempel - uniek lang maar niet oplopend (gebaseerd op tijdperk)
  • Hybride aanpak - apps hoeven niet per se één opslagoptie te kiezen.
  • Verzin uw id-mechanisme op basis van zaken als klant, datum/tijd-onderdelen enz... waarvoor u botsingen genereert en afhandelt. Afhankelijk van het schema kunnen botsingen veel minder waarschijnlijk zijn. Niet per se incrementeel maar is uniek en heeft een goed gedefinieerd leesbaar patroon.


  1. Kan geen verbinding maken met MongoDB 3.0.0 via C# Driver 1.10

  2. How-to:gebruik de Apache HBase REST-interface, deel 3

  3. Bestand maken in GridFs (MongoDb)

  4. Mongo-updatesnelheid