Me gustaría saber si los ObjectIds que se generan automáticamente para los objetos almacenados en Parse.com, si son únicos en varias clases o no puede haber tal garantía
Hay evidencia contradictoria de esto en toda la web (ver más abajo). ¿Alguien puede señalarme los documentos oficiales donde se puede encontrar esto, ya que parece que no puedo encontrarlo yo mismo?
3 respuestas
No, NO PUEDE garantizar que sea único. Esa es la explicación:
Puede cargar un objeto, usando la función de carga en DataBrowser (archivos JSON o CSV), usando cualquier ID que desee, incluso algo como "IDENTITY_1". Durante la carga, se validará contra la Colección que se está cargando. No en contra de todas las colecciones.
Dicho esto, existe la posibilidad de que haya repetido ID en todas las colecciones.
Por lo tanto, no codifique en base a esta suposición.
Una empleada de Parse respondió a su pregunta:
Solo garantizamos que serán únicos por clase. Actualizaremos los documentos de iOS para reflejar esto, gracias por señalarlo.
Tenga en cuenta que necesitará miles de millones de objetos antes de tener incluso una pequeña posibilidad de tener un duplicado. Entonces, probablemente pueda suponer que no sucederá. Simplemente no lo hacemos cumplir cuando lo generamos.
Parse probablemente esté usando identificadores generados en Mongodb. No se generan aleatoriamente, pero dado que cada clase tendrá una firma única, los identificadores generados serán únicos en todas las clases:
Un ID de objeto BSON es un valor de 12 bytes que consta de una marca de tiempo de 4 bytes (segundos desde la época), una identificación de máquina de 3 bytes, una identificación de proceso de 2 bytes y un contador de 3 bytes
http://www.mongodb.org/display/DOCS/Object+IDs
Preguntas relacionadas
Nuevas preguntas
javascript
Para preguntas sobre la programación en ECMAScript (JavaScript / JS) y sus diversos dialectos / implementaciones (excepto ActionScript). Incluya todas las etiquetas relevantes en su pregunta; por ejemplo, [node.js], [jquery], [json], etc.