MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

MongoDB - Avantage d'utiliser une chaîne de 12 octets comme identifiant unique au lieu d'une valeur incrémentielle

L'incrémentation de valeurs ou de séquences nécessite un point de référence central qui est un facteur limitant pour la mise à l'échelle. Les ObjectID sont conçus pour être des ID raisonnablement uniques qui peuvent être générés indépendamment dans un environnement distribué avec des valeurs croissantes de manière monotone (un composant d'horodatage principal) pour un ordre approximatif.

Les ID d'objet sont généralement générés par les pilotes MongoDB, il n'est donc pas nécessaire de faire un aller-retour de serveur pour trouver le prochain _id disponible ou attendre le résultat serveur d'une opération d'insertion pour savoir quel _id a été alloué. Si un pilote ou une application cliente insère un document sans inclure un _id valeur, un ObjectID sera généré par le mongod serveur.

Il n'y a aucune obligation stricte d'utiliser des ObjectID dans MongoDB :vous pouvez fournir votre propre _id s'il existe une clé unique plus naturelle pour vos données ou si vous préférez un autre format de clé primaire.