首页 > 解决方案 > MongoDb 模式设计多个集合与一个集合

问题描述

我是 NoSql 的新手,我正在做一个项目,需要将 Nodejs 与 mongodb 一起使用,我读了很多书,但似乎无法弄清楚。该应用程序将包含具有一对多关系的类别和项目,我应该使用1 个集合,其中类别对象具有一系列产品。或使用 2 个集合(类别和产品)

标签: node.jsmongodbexpressmongoosenosql

解决方案


如果一个类别有很多产品,并且您将该类别与一个产品数组一起存储,那么随着一个类别的产品数量增加,它很可能会变成一个无界数组,并且会影响数据库的整体性能。避免在架构中使用无界数组总是一个更好的主意。因此,最好有 2 个集合,一个用于类别,另一个用于产品(带有一个名为categoryId的字段)。您可以在此处阅读有关建模一对多关系的最佳实践的更多信息.


推荐阅读