MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Documento incorporado versus referência no modelo de design do mangusto?


Depende principalmente de como você vai consultar e atualizar seus dados. A consistência e o tamanho do documento também são importantes neste caso. Aqui está um bom resumo sobre como fazer referência ou incorporar documentos:

Incorporação:
  • Pequenos subdocumentos
  • Dados que não mudam regularmente
  • Consistência eventual é aceitável
  • Documentos que crescem pouco
  • Dados que você precisará frequentemente para realizar uma segunda consulta para buscar
  • Leituras rápidas

Referência:
  • Subdocumentos grandes
  • Dados voláteis
  • É necessária consistência imediata
  • Documentos que crescem muito
  • Dados que você costuma excluir dos resultados
  • Gravações rápidas

Este é um extrato de um livro sobre mongo que li. Essas são apenas regras gerais, mas, pela minha experiência, usá-las deixa muito claro se devemos fazer referência ou incorporar na maioria das vezes.

Eu preferiria fazer referência ao Fórum neste caso. Mas, por favor, considere todos os seus requisitos. Por exemplo, se você fizer referência ao Fórum do Usuário e precisar consultar todos os Usuários de um determinado Fórum, a consulta pode ser lenta neste caso. Se eu fosse você, faria uma lista de tudo o que preciso e, usando regras gerais, encontraria um equilíbrio entre os prós e os contras da incorporação e referência.

Espero que ajude!