2016-06-20 3 views
0

コレクションが5500万行あり、db.collection.distinct(foo)を実行できるようにしたいが、それは遅いです。 この場合、コレクション全体を通じて "foo"の値は1つしかないので、速くなると期待しています。ハッシュされたインデックスコレクションフィールドでMongoDBのクエリが遅い

私はインデックス(foo: "hashed")を追加しましたが、それはまだ〜30秒ですが、単一の値

がありますにもかかわらず、私はこの上でまともな速度を得るために、非ハッシュ化されたインデックスを使用する必要がありますか、または私が行方不明ですいくつかの他の側面?

編集:私は、スピードを向上させないbツリーインデックスも試してみました。 { "values" : [ "foo" ], "stats" : { "n" : 55316753, "nscanned" : 55316753, "nscannedObjects" : 0, "timems" : 14783, "cursor" : "BtreeCursor baz_1" }, "ok" : 1 }

+0

'db.collection.find({query})からダンプを追加できますか?explain(" executionStats ")'? – profesor79

答えて

0

これは、MongoDB 3.0(以前は2.4.9を実行していた場所)にアップグレードすることで修正されました。

関連する問題