sql >> Base de Datos >  >> NoSQL >> MongoDB

Creando números incrementales con mongoDB

http://www.mongodb.org /display/DOCS/Cómo+crear+un+campo+de+incremento+automático

El primer enfoque es mantener los contadores en un documento lateral:

El otro enfoque es hacer un bucle de manera optimista y manejar el código de error de clave duplicada de 11000 al continuar e incrementar la identificación para el caso extremo de colisiones. Eso funciona bien a menos que haya escrituras de alta simultaneidad en una colección específica.

Pero tenga en cuenta la advertencia en esa página:

Otras cosas a considerar:

  • Timestamp - único largo pero no incremental (basado en la época)
  • Enfoque híbrido:las aplicaciones no necesariamente tienen que elegir una opción de almacenamiento.
  • Cree su mecanismo de identificación basado en elementos como el cliente, las partes de fecha/hora, etc., que genera y maneja las colisiones. Dependiendo del esquema, las colisiones pueden ser mucho menos probables. No necesariamente incremental, pero es único y tiene un patrón legible bien definido.