MongoDB数据库的优化设计

时间:2013-12-10 14:24:13

标签: .net mongodb nosql

我正在开发一个用于存储表单内容的应用程序。每个表单可能有数百万条记录。

我的后端是.NET / MongoDB。我目前已经实现了以下设计,但我不确定它是这个数量内容的最有效的解决方案。

[{
     formId: '12344',
     records: [ { id: '12444543', customerName: 'Panda Express', ... } ]
}, ...]

在大多数情况下,顶级“表单”的数量不会超过20个,每个表单的记录在1,000到100万之间。在大多数情况下,每个“记录”中的属性数量不会超过100个。

这是在mongo中执行此操作的最有效方法吗?

1 个答案:

答案 0 :(得分:1)

对我来说,这不是最好的设计。如果您的文档快速增长,将记录存储在单个文档中并不是一个好主意。由于最大BSON文档大小为16MB,因此当您有数百万条记录时,这可能会导致问题。

相反,您可以单独存储记录,如下所示。

记录集:

id: '12444543', 
formId : '12345',
customerName: 'Panda Express', 
...