Use documentos incorporados para relacionamentos de um para muitos. A incorporação de dados conectados em um único documento reduz o número de operações de leitura necessárias para recuperar dados. Estruture seu esquema para seu aplicativo receber todas as informações necessárias em uma única operação de leitura. Por exemplo, use o modelo de um para muitos incorporado para os seguintes relacionamentos:
País para cidades principais
Autor de livros
Aluno para as turmas
Exemplo
O esquema de exemplo contém três entidades, com address one e address two pertencentes ao mesmo patron:
// patron document { _id: "joe", name: "Joe Bookreader" } // address one { street: "123 Fake Street", city: "Faketon", state: "MA", zip: "12345" } // address two { street: "1 Some Other Street", city: "Boston", state: "MA", zip: "12345" }
Padrão de documento incorporado
Neste exemplo, o aplicativo precisa exibir informações para patron e ambos os objetos address em uma única página. Para recuperar todas as informações necessárias com uma única query, incorpore as informações address one e address two dentro do documento patron :
{ _id: "joe", name: "Joe Bookreader", addresses: [ { street: "123 Fake Street", city: "Faketon", state: "MA", zip: "12345" }, { street: "1 Some Other Street", city: "Boston", state: "MA", zip: "12345" } ] }