如果索引列未传递值,则插入性能会在mongoDB中受到影响



mongoDB具有动态架构。所有文档中可能都不存在一些列。例如,"员工收集"可以具有ID,姓名,工资。但是此集合中的另一个文档可以具有其他列前_Experience。默认情况下,所有列都是索引的。

现在,如果我插入具有ID,名称和薪水的文档,它将更新ID,名称和薪水的索引。此插入还会更新prenvious_company上的索引吗?换句话说,每个新索引都会放慢所有插入,无论是否传递给本新列,都不重要。

假设id, name and salary键具有单个字段索引。MongoDB将根据排序的字段顺序在此集合上创建3个索引。

由于您没有在键previous_company上创建索引,因此插入不会影响previous_company上的索引。

您可以考虑使用稀疏索引。稀疏索引仅包含具有索引字段的文档的条目。

最新更新