【发布时间】:2015-07-08 19:31:25
【问题描述】:
我是 mongo db 数据库设计的新手, 我目前正在设计一个餐厅产品系统,我的设计类似于一个简单的电子商务数据库设计,其中每个产品类别都有产品,因此在关系数据库系统中,这将是一个(产品类别)到多个产品。 我已经做了一些研究,我确实在文档数据库中理解这一点。 去国有化是可以接受的,它会导致更快的数据库读取。 因此,在基于 nosql 文档的数据库中,我可以这样设计我的模型
//product
{
name:'xxxx',
price:xxxxx,
productcategory:
{
productcategoryName:'xxxxx'
}
}
我的问题是,我们不是在每个产品中嵌入类别,为什么不将产品嵌入到productcategory中,然后我们一旦查询类别就可以拥有所有产品,从而产生这个模型。
//ProductCategory
{
name:'categoryName',
//array or products
products:[
{
name:'xxxx',
price:xxxxx
},
{
name:'xxxx',
price:xxxxx
}
]
}
我已在此页面 http://www.slideshare.net/VishwasBhagath/product-catalog-using-mongodb 和此处 http://www.stackoverflow.com/questions/20090643/product-category-management-in-mongodb-and-mysql 研究了此问题,我发现这两个示例都使用我描述的第一个模型(即他们将 productCategory 嵌入到产品中,而不是将产品数组嵌入到 productCategory 中),我不明白为什么,请解释一下。谢谢
【问题讨论】: