我正在研究一个将在 mongo 文档中大量使用数组字段的方案,是否存在与保存相当大的其他文档数组等的方法有关的任何已知问题?
性能问题?
对mongo来说相当新并且来自SQL背景,这种方法对我来说似乎“不合适”,因为它与通过一组“主键”而不是持有“主键”对表中的所有记录进行分组的方法有点不同一次并将其余数据保存在数组中。
“主键”方法也是我在 mongo 中使用的另一种选择
什么是最好的?
我不知道特殊的性能问题。您需要记住的是,一个文档最多只有 16mb 左右。因此,如果您有数百或数千个子文档,并且有一些合理的长度,您可能会遇到文档限制的问题。根据您需要这些子文档和主文档的频率,您可以考虑将其拆分。否则,您的主文档将有很多过载(您的子文档),阻止其他“业务对象”保存在 RAM 中。所以这可能是一个重点。
此外,如果没有我实际使用 Arrays 的情况,最好只使用主键,如果可以在所有这些子文档上显示/查询这些子文档,而不需要它们的父级。我认为这在很大程度上取决于您是否经常需要这些子文档。
什么是最好的,是你的用例的问题,一般来说没有:)