在MongoDB中使用嵌套文档还是通过ID连接的多个文档?
我有一个“项目”实体,每个项目可以有许多“模型”(文件和一些元数据),每个模型都与一个“用户”关联。在MongoDB中使用嵌套文档还是通过ID连接的多个文档?,mongodb,gridfs,nosql,Mongodb,Gridfs,Nosql,我有一个“项目”实体,每个项目可以有许多“模型”(文件和一些元数据),每个模型都与一个“用户”关联。 到目前为止,我已经将每个实体视为MongoDB中的一个文档,但是,在尝试创建它们之间的关系时,我发现自己回到了SQl风格(例如,在每个模型的元数据中添加项目ID)。在NoSQL世界中这样行吗?我是否应该为project创建一个嵌套文档,其中包含所有链接模型的列表?如果是,考虑到我使用GridFs来存储模型文件,而项目只是一个普通文档,我该如何做呢?在MongoDB中,您的数据模型应该是这样的:最
到目前为止,我已经将每个实体视为MongoDB中的一个文档,但是,在尝试创建它们之间的关系时,我发现自己回到了SQl风格(例如,在每个模型的元数据中添加项目ID)。在NoSQL世界中这样行吗?我是否应该为project创建一个嵌套文档,其中包含所有链接模型的列表?如果是,考虑到我使用GridFs来存储模型文件,而项目只是一个普通文档,我该如何做呢?在MongoDB中,您的数据模型应该是这样的:最频繁访问的查询应该是快速的。在这个场景中,由于您使用GridFS存储模型文件,所以可以将项目、用户等存储为GridFS模型条目的元数据。然后可以一起查询“元数据”和GridFS。有关详细信息,请参阅本手册: