Mongodb 我们可以在mongo db中的碎片之间动态移动文档吗?

Mongodb 我们可以在mongo db中的碎片之间动态移动文档吗?,mongodb,Mongodb,我正在构建一个跟踪平台,它有以下用例 需要追踪50000辆车 每辆车每60秒中继一次其位置 获取返回X km范围内所有车辆的API 因此,我需要扩展写操作并实现查询隔离。 我可以创建一个以地理区域作为分片键(geohash)的分片集群。这将帮助我平衡写操作并实现查询隔离。但是,当车辆跨区域移动时会发生什么情况?在这种情况下,mangodb会自动将文档移动到新的切分吗?一旦写入记录,就不能更改切分键字段。除非删除原始区域中的记录并使用新区域插入,否则使用区域作为分片键将阻止您跨区域移动 在选择切分

我正在构建一个跟踪平台,它有以下用例

  • 需要追踪50000辆车
  • 每辆车每60秒中继一次其位置
  • 获取返回X km范围内所有车辆的API 因此,我需要扩展写操作并实现查询隔离。
    我可以创建一个以地理区域作为分片键(geohash)的分片集群。这将帮助我平衡写操作并实现查询隔离。但是,当车辆跨区域移动时会发生什么情况?在这种情况下,mangodb会自动将文档移动到新的切分吗?

    一旦写入记录,就不能更改切分键字段。除非删除原始区域中的记录并使用新区域插入,否则使用区域作为分片键将阻止您跨区域移动

    在选择切分键时,请查找与最常见的查询模式匹配的切分键。查询分片键将允许您直接从分片检索记录。不使用碎片键的查询必须对所有碎片执行分散-聚集查询

    如果使用或可以使用MangGDB 2.4,并且不需要执行基于范围的查询,那么您可能需要考虑使用哪一个允许均匀分布,即使您的碎片密钥是单调递增的。有关选择碎片键的建议,请参阅