2012-05-01 10 views
8

¿Cuál es la ventaja de utilizar un ObjectId en lugar de, por ejemplo, un UUID como un String simple?¿Cuál es la ventaja de usar un ObjectId en lugar de un String simple?

+1

@ich Marcado. Estás siendo desagradable. ¿Realmente se ha discutido billones de veces? No. La hipérbole y el sarcasmo no son bienvenidos aquí. Si es una estafa, enlace a la víctima y vote para cerrar. Si no puede encontrar a la víctima, mantenga su opinión desagradable para usted. – jcollum

+0

@ich De hecho, busqué "mongodb objectid" (sin comillas) aquí en SO, revisé los resultados de la primera página y no encontré la respuesta a mi pregunta. Tiene un enlace útil, por favor comparta. –

+0

No entiendo la ira del comentario de @jcollum, tal vez la pregunta/comentario fue editada/eliminada mientras tanto, pero no veo nada de malo con la pregunta. Si es un duplicado, márquelo como tal. (Incluso si la pregunta tiene varios años, creo que todavía tengo que escribir esto) –

Respuesta

11

Un ObjectId es binario y, por lo tanto, ocupa menos espacio. Los objetos también tienen el factor de clasificación: terminarán estando en el orden de inserción (o muy cerca), sin dejar de ser únicos. La clasificación puede ser buena para algunas cosas, pero no deseada para otras (como las teclas de fragmentos). También puede extraer la marca de tiempo (segunda resolución) de un ObjectId, que puede ser conveniente.

Aparte de eso, yo diría que no hay mucha diferencia.

Cuestiones relacionadas