sql >> データベース >  >> NoSQL >> MongoDB

クエリが単純でインデックスに合わせられているにもかかわらず、MongoDBクエリが不当に遅い

    非常によく似た問題にぶつかり、インデックス作成アドバイスとFAQ Mongodb.orgで、引用:

    したがって、キーa、b、およびcがあり、db.ensureIndex({a:1、b:1、c:1})を実行する場合、これらは、インデックスを可能な限り使用するための「ガイドライン」です。

    良い:

    • find(a =1、b> 2)

    • find(a>1およびa<10)

    • find(a>1およびa<10).sort(a)

    悪い例:

    • find(a> 1、b =2)
    • find(a =1、b =2).sort(c)

    • find(a =1、b> 2)

    • find(a =1、b>2およびb<4)

    • find(a =1、b> 2).sort(b)

    悪い例:

    • find(a> 1、b> 2)

    • find(a =1、b> 2).sort(c)

    お役に立てば幸いです。

    / J



    1. idと呼ばれるフィールドに対するMongoDBLINQプロバイダーの奇妙な動作

    2. MongoDBでグループ化してカウント

    3. Mongodbは、グループ内の並べ替えと制限を集約します

    4. Mongodb、条件付きの$ sum