J'ai une collection avec 1,5 million de documents. Je compte en utilisant PHP:MongoDB compte très lent
$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);
J'ai allumé le profileur et chaque compte est comme 4500 ms. J'ai 20 compteurs comme ça dans ma page, donc ça rend ma page web TRÈS TRÈS LENTE.
Que dois-je faire pour le rendre plus rapide (< 100 ms)? Est-il même possible d'utiliser MongoDB?
Merci.
C'est le problème le plus important. Vous aurez besoin d'un index {sometext: 1, datsbla: 1} pour rendre ceci rapide. Si vous ne pouvez pas vraiment faire un index sur le champ de cardinalité la plus élevée, mais pas les deux. +1 –