Menu Docs
Página inicial do Docs
/ /

Dados incorporados em seu esquema MongoDB

Documentos incorporados armazenam dados relacionados em uma única estrutura de documento. Um documento pode conter arrays e subdocumentos com dados relacionados. Esses modelos de dados denormalizados permitem que os aplicativos recuperem dados relacionados em uma única operação do banco de dados.

No exemplo a seguir, os campos contact e access são documentos incorporados:

Modelo de dados com campos incorporados que contêm todas as informações relacionadas.

Modelos de dados incorporados são frequentemente considerados desnormalizados porque os dados acessados com frequência são duplicados em várias collections.

Os modelos de dados incorporados permitem que os aplicativos consultem informações relacionadas no mesmo registro de banco de dados . Como resultado, a incorporação oferece os seguintes benefícios:

  • Melhor desempenho para operações de leitura

  • A capacidade de recuperar dados relacionados em uma única operação de banco de dados

  • A capacidade de atualizar dados relacionados em uma única operação de gravação atômica

Documentos incorporados armazenam dados relacionados em uma única estrutura de documento. Um documento pode conter arrays e subdocumentos com dados relacionados. Esses modelos de dados denormalizados permitem que os aplicativos recuperem dados relacionados em uma única operação do banco de dados.

Observação

Limite de tamanho do documento

Os documentos no MongoDB devem ser menores que 16 mebibytes.

Para dados binários grandes, considere GridFS.

Use modelos de dados incorporados nos seguintes cenários:

Se você tiver uma collection com um grande número de pequenos documentos, considere incorporar para melhorar o desempenho. Se você puder agrupar esses documentos pequenos por algum relacionamento lógico e frequentemente recuperar os documentos por esse agrupamento, considere "enriquecer" os documentos pequenos em documentos maiores que contenham uma array de documentos incorporados.

"Acumular" esses pequenos documentos em agrupamentos lógicos significa que as queries para recuperar um grupo de documentos envolvem leituras sequenciais e menos acessos aleatórios ao disco. Além disso, "acumular" documentos e mover campos comuns para um documento maior beneficia o índice desses campos. Haveria menos cópias dos campos comuns e menos entradas de chave associadas no índice correspondente. Consulte a página Índices para obter mais informações.

No entanto, se você muitas vezes só precisa recuperar um subconjunto dos documentos dentro do grupo, então "enrolar" os documentos pode não fornecer melhor desempenho. Além disso, se documentos pequenos e separados representarem o modelo natural para os dados, você deve manter esse modelo.

Para consultar dados em documentos incorporados, use a notação de ponto. Para obter exemplos de consultas de dados em arrays e documentos incorporados, consulte:

Voltar

Melhores práticas

Receber um selo de habilidade

Mestre "Relacional para modelo de documento " de grátis!

Saiba mais

Nesta página