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

MongoDBの並べ替えは、インデックス付きフィールドでも非常に低速です

    explainを実行する必要があります クエリに対して、何が起こっているのかを理解するのに役立ちます。

    Mongoは、フィルタリングと並べ替えの両方にインデックスを使用していない可能性があります。 $orを使用する場合 、オプションを一致させるために複数のインデックスを使用できます。ただし、sortを追加すると フィルタリングに使用できるインデックスを使用しない場合があります。

    クエリで並べ替える場合は、並べ替えられたフィールドがヒットするインデックスに含まれていることを確認する必要があります(最後、または並べ替えに使用できません)。

    インデックスヒントを渡すことで、速度を上げることもできるかもしれません。クエリが一致するドキュメントの数はわかりませんが、数が少なく、初期条件がインデックスに一致していることを確認した場合は、_idで並べ替えてください。 すばやく実行できます。




    1. MongoDBは、メールアドレス、ユーザー名などの正規表現を保存します

    2. node.jsアプリを介してネストされたハッシュをredisに保存します

    3. Meteorは、テンプレートヘルパー関数でフェッチまたは検索を使用しますか?

    4. MongoDB検索を使用してオートコンプリート機能を実装する