如何在Map Reduce查询和MongoDB和PHP中使用解释

时间:2012-07-16 10:02:23

标签: php mongodb profiling

我正在使用explain进行简单的查询,以准确了解执行时间。

    $this->db->toto->find($req)->sort(array('date' => 1))->explain();

我现在想在地图上使用解释并减少查询,该怎么做? 我应该使用“经典”分析系统吗?

我正在尝试比较这两个查询的执行时间。

例如:

    $res = $this->db->command(array(
        "mapreduce" => "toto",
        "map" => $map,
        "reduce" => $reduce,
        "finalize" => $finalize,
        "query" => $req,
        "out" => array("inline"=>1)
    ))->explain();

不起作用,因为命令返回一个数组(解释需要一个MongoCursor)。

非常感谢你:)

1 个答案:

答案 0 :(得分:2)

解释不适用于map / reduce之类的命令。您可以做的节拍是对您正在使用的查询进行解释。

如果您只需要执行时间,则可以运行m / r并计时。这就是解释如何确定执行时间。