Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ / /

Estruturas de árvore modelo com referências pai

Nesta página

  • Visão geral
  • Padrão

Esta página descreve um modelo de dados que descreve uma estrutura semelhante à árvore nos documentos MongoDB armazenandoreferências do para nós "pais" em nós filhos.

O padrão Referências pai armazena cada nó de árvore em um documento; além do nó de árvore, o documento armazena a ID do nó principal.

Considerar a seguinte hierarquia de categorias:

Modelo de dados em árvore para uma hierarquia de amostra de categorias.

O exemplo a seguir modela a árvore usando referências principais, armazenando a referência à categoria principal no campo parent:

db.categories.insertMany( [
{ _id: "MongoDB", parent: "Databases" },
{ _id: "dbm", parent: "Databases" },
{ _id: "Databases", parent: "Programming" },
{ _id: "Languages", parent: "Programming" },
{ _id: "Programming", parent: "Books" },
{ _id: "Books", parent: null }
] )
  • A query para recuperar o nó principal é rápida e direta:

    db.categories.findOne( { _id: "MongoDB" } ).parent
  • Você pode criar um índice no campo parent para habilitar a pesquisa rápida pelo nó pai:

    db.categories.createIndex( { parent: 1 } )
  • Você pode executar query pelo campo parent para localizar seus nós filhos imediatos:

    db.categories.find( { parent: "Databases" } )
  • Para recuperar subárvores, veja $graphLookup.

Voltar

Estruturas de árvore

Nesta página