MongoDB 検索するインデックス定義の storedSource オプションは、MongoDB 検索するが保存する必要があるソースドキュメント内のフィールドを指定します。バックエンドデータベースで暗黙的なクエリ時間検索の必要性が減るため、特定のユースケースでクエリのパフォーマンスを向上させるために storedSource を構成すると利用できます。MongoDB 検索するのすべてのMongoDB 検索するフィールドタイプのフィールドをMongoDB 検索するに保存できます。
MongoDB Search は保存済みフィールドのインデックスしないため、クエリを実行するにはフィールドを個別にインデックス必要があります。returnStoredSource オプションを使用して、クエリ時に保存されたフィールドを検索することもできます。
注意
storedSource MongoDB 7.0 以降を実行しているクラスターでのみ利用可能です。
保存されたフィールドを検索する方法の詳細については、「 保存されたソース フィールドを返す 」を参照してください。
構文
インデックス定義では、 storedSourceオプションの構文は次のとおりです。
1 { 2 "storedSource": true | false | { 3 "include" | "exclude": [ 4 "<field-name>", 5 ... 6 ] 7 } 8 }
オプション
オプションは ブール値 または インデックス定義 内のstoredSource オブジェクト を受け取ります。
Boolean Values
値 | 説明 |
|---|---|
| MongoDB Search がドキュメント内のすべてのフィールドを保存する必要があることを指定します。完全なドキュメントを保存すると、インデックス作成およびクエリ中にパフォーマンスに大きな影響可能性があります。詳細については、「ソース フィールドの保存」を参照してください。 インデックス定義にベクトル型フィールドが含まれている場合、サポートされません。その代わりに、 |
| MongoDB Search が元のソースドキュメントを保存 しない ことを指定します。これは |
オブジェクト
storedSource オプション オブジェクトには、次のいずれかのフィールドが含まれている必要があります。
フィールド | タイプ | 説明 |
|---|---|---|
| 文字列の配列 | 保存するフィールドへのフィールド名またはドット区切りのパスを含むリスト。指定されたフィールドに加えて、 MongoDB Search はデフォルトで |
| 文字列の配列 | 保存対象外とするフィールドを、名前またはドット区切りパスで記述します。指定された場合、MongoDB Search は元のドキュメントを保存しますが、指定されたフィールドは除外されます。インデックス定義に vector 型のフィールドが含まれている場合、 |
例
次のインデックス例では、sample_mflix.moviesコレクションのフィールドを使用して、storedSource オプションを使用してMongoDB Search に保存するフィールドを構成する方法を示します。mongoshインデックスを構成するには、 、Atlas UIビジュアル エディター、または Atlas UI JSONエディターを使用できます。