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

Como construir uma estrutura recursiva com o MongoDB


Pessoalmente, eu implementaria uma estrutura de caminhos materializados aqui, é muito fácil atualizar e consultar usando regexs sem distinção entre maiúsculas e minúsculas prefixadas (o que significa que usará um índice), então um exemplo ficaria assim:
{_id: {}, path: 'about_us/where_are_we'}

Isso também, como você pode ver, permite que URLs amigáveis ​​para SEO atinjam diretamente essa árvore, dando a você o máximo de poder. Isso é particularmente útil em sistemas de ajuda em que você deseja exibir uma URL como:
/help/how-to-use-my-site

Desde how-to-use-my-site pode acertar diretamente no caminho ou ainda mais você pode abrigar dois campos e acertar diretamente no texto completo como:
{_id: {}, path: 'about_us/where_are_we', normalised_url: 'where_are_we'}

Claro que como a resposta anterior disse que você tem que saber como você deseja acessar seu conteúdo, mas os caminhos materializados são um bom começo na minha opinião.

Você pode ler mais sobre estruturas de árvores no Mongo aqui:http://www. mongodb.org/display/DOCS/Trees+in+MongoDB