sql >> Database >  >> NoSQL >> MongoDB

Wat betekent de documentatie van MongoDB als staat dat ObjectID's waarschijnlijk uniek zijn?

Twee redenen:

  1. Elke ObjectId wordt lokaal op de client gegenereerd. De verschillende klanten coördineren de waarden die ze genereren niet. Daarom is het mogelijk dat er twee clients zijn die toevallig dezelfde willekeurige getallen genereren en dus precies dezelfde ObjectIds zouden genereren. Zeer onwaarschijnlijk maar mogelijk, vandaar de formulering "waarschijnlijk unieke".

  2. Algoritme voor het genereren van object-ID's specificeert het gebruik van een 3-byte-teller die wordt gebruikt om de waarden die in dezelfde seconde worden gegenereerd, ondubbelzinnig te maken. Als u meer dan 16 miljoen ObjectIds in dezelfde seconde genereert, loopt die teller over en begint de client die u gebruikt ObjectIds te genereren die hij zojuist al heeft gegenereerd.




  1. Combineer twee $of verklaringen

  2. Hoe de bson-vorm van mongo-query in golang te schrijven?

  3. Hoe db.Collection.stats() aanroepen vanuit Mongo java-stuurprogramma

  4. Mongoose findOneAndUpdate en upsert retourneert geen fouten, geen documenten beïnvloed