MongoDB 文档https://docs.mongodb.com/manual/reference/glossary/#term-natural-order https://docs.mongodb.com/manual/reference/glossary/#term-natural-order将自然顺序定义为
数据库引用磁盘上文档的顺序。这是默认的排序顺序。
也在这里https://docs.mongodb.com/manual/reference/method/cursor.sort/#return-natural-order https://docs.mongodb.com/manual/reference/method/cursor.sort/#return-natural-order它说如下:
此排序是内部实现功能,您不应依赖其中的任何特定结构。
那么,在以下情况下,自然排序是否会发生变化呢?
- 正常操作:压缩、复制、备份/恢复、从健康副本引导节点
- 存储引擎升级
- 还有别的事吗?
我的意思是,如果有一个查询没有指定排序(或请求$natural
ordering),对于现有集合,对于保持不变的数据,是否有可能在一段时间后由该查询以不同的顺序返回?有任何保证吗?
有任何保证吗?
没有任何。
对于现有的集合,对于保持不变的数据,是否有可能在一段时间后由该查询以不同的顺序返回?
是的。已发布的文档允许这种可能性。出于实际原因,这种情况不太可能发生,但如果数据库有一天决定突然改变文档的顺序,它不会违反它在已发布文档中做出的任何承诺。
正常操作:压缩、复制、备份/恢复、从健康副本引导节点
除此之外,插入单个文档还可以更改现有文档的顺序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)