English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

MongoDB インデックス制限

本章では、インデックスの制限とその他の構成要素について学びます。

追加コスト

各インデックスはスペースを占有し、インサート、更新、および削除のたびにコストがかかるため、集合を読み取り操作に使用することは稀の場合は、インデックスを使用しない方が良いでしょう。

RAM使用

インデックスはRAMに格納されるため、インデックスの合計サイズがRAM制限を超えないようにしてください。合計サイズがRAMサイズに達すると、インデックスの一部を削除し始め、パフォーマンスが低下します。

クエリ制限

インデックスは使用できません-

  • 正規表現や否定演算子、例えば$nin、$notなど。

  • 算術演算子、例えば$modなど。

  • $where子句

したがって、常にクエリのインデックス使用状況を確認することをお勧めします。

インデックスキー制限

から2.6バージョンから、既存のインデックスフィールドの値がインデックスキー制限を超えた場合、MongoDBはインデックスを作成しません。

インデックスキー制限を超えたファイルの挿入

このドキュメントのインデックスフィールドの値がインデックスキー制限を超えた場合、MongoDBはインデックスコレクションにドキュメントを挿入しません。mongorestoreおよびmongoimportユーティリティも同様です。

最大範囲

  • コレクションには最大で64インデックス

  • インデックス名の長さは125文字

  • 複合インデックスは最大で31フィールドがインデックスされています。