0

ユーザーのログを保存するためにmongoDBを使用しています。リアルタイム レポートでは、特定のタイプのテーブルの個別のユーザーをカウントする必要があります。最初は高速ですが、テーブルが大きくなると遅くなります。

使用したコードは次のとおりです。

$connection = new MongoClient();
$result = $collection->distinct('user', array('type' => $type, 'ctime' => array('$gte' => $start)));
$total = count($result);

$totalはユニークユーザーの総数です

パフォーマンスを向上させるためにクエリを改善する方法を誰かに提案できますか? どうもありがとう。

4

1 に答える 1

0

$collection->ensureIndex(array('user' => 1));ユーザーフィールドにインデックスを作成するために使用します。

于 2013-11-19T16:45:57.897 に答える