Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Datos incrustados en su esquema MongoDB

Los documentos incrustados almacenan datos relacionados en una única estructura de documento. Un documento puede contener arreglos y subdocumentos con datos relacionados. Estos modelos de datos desnormalizados permiten a las aplicaciones recuperar datos relacionados en una sola operación de base de datos.

En el siguiente ejemplo, el contact y access campos son documentos incrustados:

Modelo de datos con campos incrustados que contienen toda la información relacionada.

Los modelos de datos embebidos a menudo se consideran desnormalizados porque los datos a los que se accede con frecuencia se duplican en varias colecciones.

Los modelos de datos embebidos permiten a las aplicaciones consultar piezas de información relacionadas dentro del mismo registro de base de datos. Como resultado, la integración proporciona los siguientes beneficios:

  • Mejor rendimiento para las operaciones de lectura

  • La capacidad de recuperar datos relacionados en una única operación de base de datos

  • La capacidad de actualizar datos relacionados en una única operación de escritura atómica

Los documentos incrustados almacenan datos relacionados en una única estructura de documento. Un documento puede contener arreglos y subdocumentos con datos relacionados. Estos modelos de datos desnormalizados permiten a las aplicaciones recuperar datos relacionados en una sola operación de base de datos.

Nota

Límite de tamaño del documento

Los documentos de MongoDB deben ser más pequeños que 16 mebibytes.

Para datos binarios grandes, considere GridFS.

Utilice modelos de datos incrustados en los siguientes escenarios:

Si posees una colección con una gran cantidad de documentos pequeños, considera usar embedding para mejorar el rendimiento. Si puedes agrupar estos pequeños documentos según alguna relación lógica y recuperas frecuentemente los documentos mediante este agrupamiento, podrías considerar "consolidar" los pequeños documentos en documentos más grandes que contengan un arreglo de documentos incrustados.

"Consolidar" estos pequeños documentos en agrupamientos lógicos significa que los queries para recuperar un grupo de documentos implican lecturas secuenciales y menos accesos aleatorios al disco. Además, "consolidar" documentos y mover campos comunes al documento más grande beneficia el índice en estos campos. Habría menos copias de los campos comunes y habría menos entradas de claves asociadas en el índice correspondiente. Consulte Índices para obtener más información sobre los índices.

Sin embargo, si a menudo solo necesita recuperar un subconjunto de los documentos dentro del grupo, entonces "recapitular" los documentos puede no proporcionar un mejor rendimiento. Además, si documentos pequeños y separados representan el modelo natural para los datos, deberías mantener ese modelo.

Para consultar datos dentro de documentos incrustados, utilice notación de puntos. Para ejemplos de cómo consultar datos en arreglos y documentos incrustados, consulte:

Volver

Mejores prácticas

Obtén una insignia de habilidad

¡Domina el "Modelo relacional orientado a documentos" gratis!

Más información

En esta página