我有一个包含150万份文档的集合。我正在使用PHP:
$db->some->ensureIndex(array("sometext" => 1));
$db->some->ensureIndex(array("datsbla" => 1));
$arr["sometext"] = $string;
$arr["datsbla"] = array('$gte' => $some, '$lte' => $thing);
$count = $db->some->count($arr);
我开启了探查器,每次计数都像4500毫秒。我的页面中有20个这样的计数器,所以它使我的网页非常慢。
我应该怎么做才能让它更快(<100毫秒)?甚至可以使用MongoDB吗?
感谢。
答案 0 :(得分:2)
您有两个单独的索引 - 查询一次只能使用1个索引,因此您无法完全利用索引。在两个字段上尝试复合索引,您应该会看到显着的改进。