|
0
|
| Bear Bile Farming is Torture · 技术社区 · 3 年前 |
|
|
1
3
这并不能保证。每个MongoDB节点都会按照遇到文档的顺序返回文档。这意味着,如果查询使用索引来选择文档,则会按照文档在索引中出现的顺序来遇到这些文档。 只要数据库是单个节点或单个副本集,这将导致对结果进行排序。 然而,如果这是在分片集群上运行的,则每个分片都将返回按索引排序的结果,但这些每个分片的结果集将在mongos中按它们碰巧到达的顺序进行组合。 这意味着,当你的应用程序变得足够流行,以至于你不得不扩展到一个分片集群时,你的结果不再以稳定的顺序返回时,你可能会感到非常惊讶。 从长远来看,向请求显式添加排序会更好。在单节点或单副本集的情况下,它不会给索引服务查询增加任何额外的开销,但有助于代码经得起未来验证。 |