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 los campos access son documentos incrustados:

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

Los modelos de datos integrados a menudo se consideran desnormalizados porque los datos a los que se accede con frecuencia están duplicados en múltiples colecciones.

Los modelos de datos incrustados permiten a las aplicaciones consultar información relacionada en el mismo registro de base de datos. Como resultado, la incrustación ofrece las siguientes ventajas:

  • 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 Sistema operativo GridFS.

Utilice modelos de datos incrustados en los siguientes escenarios:

Si tiene una colección con una gran cantidad de documentos pequeños, considere incrustarlos para mejorar el rendimiento. Si puede agruparlos mediante una relación lógica y los recupera con frecuencia mediante esta agrupación, podría considerar agruparlos en documentos más grandes que contengan una matriz de documentos incrustados.

Agrupar estos documentos pequeños en grupos lógicos implica que las consultas para recuperar un grupo de documentos implican lecturas secuenciales y menos accesos aleatorios al disco. Además, agrupar los documentos y mover los campos comunes al documento más grande beneficia el índice de estos campos. Habría menos copias de los campos comunes y menos entradas clave 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, la acumulación de documentos podría no ofrecer un mejor rendimiento. Además, si los documentos pequeños e independientes representan el modelo natural para los datos, debería 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