mongodb - 在 mongodb 中分片的情况下排序

标签 mongodb sorting mongodb-query sharding nosql

当我们根据散列分片键将集合分片到两个 mongod 分片时,我在 mongodb 中实现了分片,因此它在分片内进行并行排序。之后,它如何根据 _id 对集合进行排序?其他的考虑点是什么?什么是:

  1. 哈希分片键的限制?
  2. mongo 查询路由器使用什么排序程序对从分片中获取的记录进行排序?
  3. 是否会因为网络延迟影响查询?

最佳答案

  1. 不确定。

  2. 如果您不指定排序,mongo 将从分片循环返回记录,我认为这意味着不能保证任何特定的排序,甚至不能保证从一个查询到另一个查询的可重现顺序。如果您有显式排序,则主分片将执行合并排序。查看mongos docs

  3. 当然可以。

(这是一个老问题,但它在 Google 搜索结果中的排名很高。)

关于mongodb - 在 mongodb 中分片的情况下排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23603216/

相关文章:

c++ - 如何在保持顺序的同时填充一个整数数组?

java - 按键或值对 TreeMap 进行排序

mongodb - 组合数组中的唯一项

mongodb - 返回满足子查询结果集的文档

node.js - Nodejs mongo返回带有分页信息的数据

java - 如何使用 MongoClientURI 设置 MongoClientOptions?

ruby-on-rails - 次要或主要超时时的 Mongoid 故障转移

node.js - Mongoose $push 不断添加两个条目

c - 如何正确调用这个合并排序函数?

mongodb - 将 ISO 日期转换为 yyyy-mm-dd 格式