MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Cosa significa la documentazione di MongoDB quando dice che gli ObjectID sono probabilmente unici?

Due motivi:

  1. Ogni ObjectId viene generato localmente sul client. I diversi client non stanno coordinando i valori che stanno generando. Pertanto è possibile che ci sono due client che generano gli stessi numeri casuali e quindi genererebbero esattamente gli stessi ObjectId. Altamente improbabile ma possibile, quindi dicitura "probabilmente unica".

  2. Algoritmo di generazione ObjectId specifica l'uso di un contatore a 3 byte che viene utilizzato per disambiguare i valori generati nello stesso secondo. Se generi più di 16 milioni di ObjectId nello stesso secondo, quel contatore andrà in overflow e il client che stai utilizzando inizierà a generare ObjectId che ha già generato un momento fa.