如何在MongoDB中存储发票项目?

时间:2019-04-20 04:19:18

标签: mongodb

我必须将订单项存储在数据库中。

当前,我正在创建其中的一批并将其存储为单个文档。

date: null,
items: [
    { name: 'Bla', cost: 5, ref: 'user id' },
    { name: 'Bla', cost: 5, ref: 'user id' }, 
]

但是我有一种直觉,因为它是一个对象数组,因此会更加昂贵(性能和处理)。 ($ unwind,$ project)。

如果我将每个订单项都存储为文档,那会很好吗?

到目前为止,我还没有这样做的原因是我们可能在1-3年内拥有大约10亿个文档

再说一遍,如何为每个订单项生成唯一的ID?我知道Mongo会生成_id,但是我的意思是可以在发票中显示的数字0、1、2等。

因此,我不确定MongoDB是否可以有效地处理它。

最好, 法赫姆

编辑:

这些是我认为此问题与建议的重复项不重复的原因。

这些问题是关于ref与嵌入文档的问题。我不是。

问题是,以批处理(对象数组)或单个文档存储内联项的最佳方法(就性能和低延迟而言)是什么?我不在乎引用或此处的任何内容。

0 个答案:

没有答案