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

Différence entre les champs id et _id dans MongoDB

Je suppose que c'est juste une faute de frappe dans la documentation. Le _id Le champ est la clé primaire de chaque document. Il s'appelle _id et est également accessible via id . Tentative d'utilisation d'un id la clé peut entraîner un illegal ObjectId format erreur.

Cette section indique simplement que les ObjectID générés automatiquement commencent par un horodatage, il est donc possible de trier vos documents automatiquement. C'est plutôt cool puisque le _id est automatiquement indexé dans chaque collection. Voir http://www.mongodb.org/display/DOCS/Object+IDs pour plus d'informations. Plus précisément sous "Spécification BSON ObjectID".

Un ID d'objet BSON est une valeur de 12 octets composée d'un horodatage de 4 octets (secondes depuis l'époque), d'un ID de machine de 3 octets, d'un ID de processus de 2 octets et d'un compteur de 3 octets. Notez que les champs d'horodatage et de compteur doivent être stockés big endian contrairement au reste de BSON.