MongoDBのインデックス作成の制限
オーバーヘッド
各インデックスは、挿入、更新中に、いくつかのストレージスペースを占有し、また、インデックス操作を削除する必要があります。 あなたはめったにコレクションを読まないのであれば、インデックスを使用しないことをお勧めします。
メモリ(RAM)を使用し
インデックスは、メモリ(RAM)に保存されているので、あなたはメモリを超えていないインデックスのサイズを制限するようにしてください。
インデックスのサイズは、メモリの制限よりも大きい場合、MongoDBはパフォーマンスの低下につながるインデックスの一部を削除します。
クエリの制限
インデックスは次のクエリを使用することはできません。
- ように正規表現と非事業者は、そのような$ニンなど、$ではない、と。
- そのようなので、上のmod $、およびなどの算術演算子、。
- $ Where句
だから、インデックスは良い習慣であるかどうか、あなたの文をチェックし、表示するために説明することができます。
インデックスキーの制限
既存のインデックスキーのインデックスフィールドの値が上限を超えた場合、バージョン2.6からは、MongoDBはインデックスを作成しません。
文書へのキーインデックスが制限を超えて
ドキュメントのインデックスフィールドの値はインデックスキーの制限を超えた場合、MongoDBはコレクションのインデックスに任意の文書を変換しません。 同様のmongorestoreとmongoimportツール。
最大範囲
- インデックスセット以上64
- インデックス名の長さが125文字を超えることはできません
- 複合インデックスには、最大31のフィールドを持つことができます