Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 使用mongos加速广播查找_Mongodb - Fatal编程技术网

Mongodb 使用mongos加速广播查找

Mongodb 使用mongos加速广播查找,mongodb,Mongodb,我使用的是一个分片集群,每个分片都是一个副本集。使用散列索引进行切分。每个find查询都会从每个shard加载数百万个文档 我有一个直接连接到每个节点的设置,以获得最好的速度。但由于官方并不支持,我尝试使用mongos。mongos的查询速度要慢得多。我想知道如何加快速度 mongos需要大量的RAM来完成它的工作 看起来mongos在返回结果之前正在进行缓存或其他操作 我所期望的是:mongos连接到每个shard,只返回来自各个节点的结果。也许是循环赛。不需要任何排序。只是收集所有碎片 似乎

我使用的是一个分片集群,每个分片都是一个副本集。使用散列索引进行切分。每个find查询都会从每个shard加载数百万个文档

我有一个直接连接到每个节点的设置,以获得最好的速度。但由于官方并不支持,我尝试使用mongos。mongos的查询速度要慢得多。我想知道如何加快速度

  • mongos需要大量的RAM来完成它的工作
  • 看起来mongos在返回结果之前正在进行缓存或其他操作
  • 我所期望的是:mongos连接到每个shard,只返回来自各个节点的结果。也许是循环赛。不需要任何排序。只是收集所有碎片

    似乎这项工作对mongos来说太简单了


    在此场景中如何使用mongos,或者没有办法优化其逻辑?

    您好,Sebastian Bauer,欢迎来到Stack Overflow。我可以要求澄清一下吗?您是否尝试过在您的查询中使用
    explain
    ,看看它是否对mongos集成阶段有用?网站上的文件表明,这会有所帮助。请记住,如果有必要,请对您的问题进行编辑和重新编辑,以使问题尽可能好。@VinceBowdren,谢谢您的提示
    explain
    似乎对聚合操作非常有帮助,这里不使用聚合操作。mongos似乎是与分片集群通信的唯一官方方式,但我通过直接连接获得了更好的性能。我想我会坚持这种方法。