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

Mongo DB Design, incorporação vs relacionamentos


1) Em relação ao limite de documentos de 4 MB, é o que diz o "MongoDB:The Definitive Guide":

No final, depende de quão grande você espera que as contas de um usuário cresçam. Espero que o trecho acima dê uma ideia dos limites impostos pelo tamanho do documento.

2) Esquema desnormalizado (as contas vão com o documento do usuário) é o caminho a seguir se você sabe que nunca executará consultas globais nas contas (exemplo de tal consulta é se você deseja recuperar as dez contas mais recentes inserido no sistema). Você terá que usar map-reduce para recuperar resultados para essas consultas se usar um esquema desnormalizado.

O esquema normalizado (usuário e faturas em documentos separados) é a melhor opção se você deseja flexibilidade na forma como as faturas são consultadas. No entanto, como o MongoDB não suporta junções, você terá que executar várias consultas toda vez que quiser recuperar as contas correspondentes a um usuário.

Dado o caso de uso que você mencionou, eu usaria o esquema desnormalizado.

3) Todas as atualizações no MongoDB são atômicas e serializadas. Isso deve responder à preocupação de Steve.

Você pode achar esses slides úteis. http://www.slideshare.net/kbanker/mongodb-meetup

Você também pode consultar a página Production Deployments do MongoDB. Você pode achar os slides do SF.net úteis.