首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Mongo文档的文档和文档(树!)

Mongo文档的文档和文档(树!)
EN

Stack Overflow用户
提问于 2015-11-07 02:36:37
回答 1查看 38关注 0票数 0

我开始使用MongoDB,并且我有一个集合,其中的文档可能有子文档,也可能有子文档……一棵树。

代码语言:javascript
运行
复制
{
a:[
    {
    a:[
        {
        },
        {
        },
    ]
    },
    {
    }
 ],
 ...
},
{
a:[
    {
    a:[
        {
        },
        {
        },
    ]
    },
    {
    }
 ],
 ...
}

我应该显式地这样做吗?是应该将每个子文档存储在另一个集合中并将I存储在一个数组中,还是应该使用传统的关系型SQL DB来实现这一点?

谢谢您:)

EN

回答 1

Stack Overflow用户

发布于 2015-11-07 03:06:03

MongoDB是一个面向文档的数据库。通常在关系数据库中被分成多个表(即“规范化”)的数据通常一起存储在文档数据库中,有时存储在单个集合中。

MongoDB是“无模式的”,这意味着它没有固定的模式,因此它的文档结构非常灵活。您可以在文档中包含子文档甚至数组,如您在树结构中所示。这使得设计NoSQL模式非常具有挑战性,因为您有很多选择可供选择。实际上,最佳模式取决于您的应用程序和对数据库执行的查询。在SQL数据库中,数据是基于数据本身进行规范化的,而不考虑查询。

请记住,MongoDB不支持连接,所以您“拆分”到多个集合中的任何东西都需要手动连接。继续利用MongoDB的灵活模式,并尝试不同的选项。具有多层嵌套的文档将使查询更加复杂,因此通常需要权衡取舍。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33573438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档