文档说集合上的索引不是必需的,这为插入和/或按插入排序的数据获取提供了更好的性能。
...因此,查询不需要索引即可按插入顺序返回文档。如果没有这种索引开销,上限集合可以支持更高的插入吞吐量。
但是,进一步阅读,它说:
默认情况下,上限集合具有 _id 字段和 _id 字段上的索引。
无论如何,默认情况下都会创建一个索引,我认为它这样做是因为您很可能希望在某个时候更新集合中的数据:
如果您计划更新上限集合中的文档,请创建索引,以便这些更新操作不需要集合扫描。
但是有 property autoIndexId
,这个属性可以设置为false
,但是文档说:
从 MongoDB 4.0 开始,在本地数据库以外的数据库中创建集合时,不能将选项 autoIndexId 设置为 false。
这意味着:当我将我的数据库上传到云端时,我的上限集合会将autoIndexId
属性设置为true
吗?
或者文档是否提到必须将此选项设置为 localhost 才能将数据库上传到云端?
总之,我要创建的集合不会更新文档,那么如何才能实现文档所说的“更高的插入性能”呢?刚刚设置autoIndexId
为false
?
我希望你能帮助我理解:)