私はマップ上に表示するいくつかの追加プロパティを持つ地理空間的+時間的データのコレクションを持っています。コレクションにはこの時点で数百万のドキュメントがあり、時間の経過と共に成長します。MongoDBインデックス:複数の単一フィールド対単一の化合物?
各文書には次のフィールドがあります。
- 場所:[にGeoJSONオブジェクト]
- 日:[Dateオブジェクト]
- ZoomLevel:[INT32]
- EntryType:[オブジェクトID]
私は、このコレクションを場所(一般にgeowithinクエリ)、日付(一般的に$ gte/$ lt )、ZoomLevel、およびEntryType。
私が疑問に思っているのは、4つのフィールドすべて、またはフィールドごとに1つのインデックス、またはそれらの組み合わせを含む複合インデックスを作成する必要がありますか?
のみ2dsphereインデックスフィールドが インデックスは、ドキュメントを参照するかどうかを判断し、他の種類の キーと一緒に2dsphereインデックスキーを含み、複合インデックスの場合:私は、MongoDBのドキュメントに以下をお読みください。
... 2dsphereインデックスをLocationに持つことは、複合インデックスの一部であるという意味は無意味かもしれません。
これについての明確さは非常に高く評価されます。
Aha! 2dsphereスパースオプションビットを指摘してくれてありがとう。今より意味をなさない。 – DanM