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

Créer des nombres incrémentiels avec mongoDB

http://www.mongodb.org /display/DOCS/Comment+créer+un+champ+d'incrémentation+automatique

La première approche consiste à conserver les compteurs dans un document annexe :

L'autre approche consiste à boucler de manière optimiste et à gérer le code d'erreur de clé double de 11000 en continuant et en incrémentant l'identifiant pour le cas limite des collisions. Cela fonctionne bien à moins qu'il n'y ait des écritures simultanées élevées dans une collection spécifique.

Mais soyez conscient de l'avertissement sur cette page :

Autres éléments à prendre en compte :

  • Horodatage - unique long mais non incrémenté (basé sur l'époque)
  • Approche hybride :les applications ne doivent pas nécessairement choisir une option de stockage.
  • Développez votre mécanisme d'identification en fonction d'éléments tels que le client, les parties date/heure, etc., pour lesquels vous générez et gérez les collisions. Selon le schéma, les collisions peuvent être beaucoup moins probables. Pas nécessairement incrémentiel, mais unique et doté d'un modèle lisible bien défini.