このページでは、Atlas での MongoDB Search 機能の互換性と制限について説明します。自己管理型配置と MongoDB Search の互換性の詳細については、mongot の互換性と要件を参照してください。
Atlas の互換性
MongoDB Search の一部の機能には、特定のバージョンのMongoDBが必要になる場合があります。次の表では、特定のMongoDBバージョンを必要とするMongoDB Search 機能が示されています。
MongoDB Search の機能 | 機能をサポートする MongoDB バージョン |
|---|---|
8.0+ | |
| 8.2+ |
7.0+, 8.0+ | |
7.0+, 8.0+ | |
7.0+, 8.0+ | |
7.0+, 8.0+ | |
7.0+, 8.0+ | |
7.0+, 8.0+ | |
7.0+, 8.0+ | |
7.0+, 8.0+ | |
7.0+, 8.0+ | |
Atlas CLI を使用したMongoDB Search のローカル配置 | 7.0+, 8.0+ |
6.0.13+, 7.0.5+, 8.0+ |
MongoDB Search is not supported for time series collections. Starting in MongoDB 8.3, the $search, $searchMeta, and $vectorSearch stages fail with an error message when run on timeseries collections. Previously, these stages returned empty results.
無料クラスターと Flex クラスターの制限
次の制限は、 無料クラスターおよび Flex クラスター上のMongoDB Search にのみ適用されます。
インデックス作成数の上限は以下のとおりです。
無料クラスターの 3 インデックス(タイプに関係なく、
searchまたはvectorに関係なく)。Flex クラスターで 10 インデックス。
クラスター階層で許可されているインデックスの最大数 に達したら、クラスター階層を増やす追加のインデックスを作成できます。クラスター階層を増やすすると、インデックスが新しいクラスター階層に再構築され、最初の同期 がトリガーされます。
インデックス定義の JSON オブジェクトのサイズは 3 KB を超えることはできません。
インデックス定義には、シノニム マッピングを 1 つだけ含めることができます。
300 を超えるフィールドを含むインデックスビルドは失敗します。
Lucene のデフォルトの 句制限である 1024 は、検索用に作成されたすべての
BooleanQueryに適用されます。シノニム(同意語)コレクションは 10,000 ドキュメントを超えることはできません。
MongoDB Search では、Atlas UI でカスタマー キー管理を使用した暗号化キーでのMongoDB Search インデックスの暗号化はサポートされていません。
Search Playground の制限
Search Playground の制限の詳細については、「Search Playground の制限」をご覧ください。
サポートされているクライアント
インデックスの制限
インデックス オブジェクトが2.1 億を超える、または近く超えるようになる MongoDB Search インデックスを作成する場合は、numPartitions または クラスターをシャーディングする 必要があります。この制限では、インデックス付きコレクション フィールド内の各最上位ドキュメントまたはネストされた embeddedDocument は 1 つのオブジェクトとしてカウントされます。
デフォルトでは 、 MongoDB Search は、特定のレプリカセットノードまたはシャードで 2.1 億インデックスオブジェクトを超える単一インデックスの変更のレプリケートを停止します。つまり、インデックスは引き続きクエリ可能ですが、古い結果が生じる可能性があります。
コレクションに 16MB 以上の document が含まれている場合、MongoDB Search は document のインデックスに失敗し、インデックスが STALE になり、インデックスの完全な再構築が開始されます。インデックスの再構築を正常に完了するには、コレクションから問題のあるdocumentを削除する必要があります。この問題は、大きなdocumentでのアップデート操作により変更ストリームイベントが16 MB のBSON制限を超えた場合にも発生する可能性があります。これを回避するために、コレクション内のどのdocumentも 8MB を超えないことをお勧めします。次のベストプラクティスの採用を検討しましょう。
サブドキュメントや配列のサイズを最小限に抑えるように、ドキュメントを構造化してください。
大規模なフィールド、サブドキュメント、または配列を更新または置換する操作は避けてください。
詳細については、「Change Streams 運用に関する推奨事項」および「大きなドキュメントのサイズを縮小するを参照してください。
インデックスの制限の詳細については、以下を参照してください。
フィールド型の制限
フィールド型の制限については、次を参照してください。
その他の制約
クラスター化されたコレクションを使用しており、notablescan パラメータが true に設定されている場合、 MongoDB Search インデックスのビルドが完了しないことがあります。この問題を解決するには、notablescan パラメータを false に設定するか、ログでインデックスのステータス遷移を確認する必要があります。
クエリの制限
演算子の制限
クエリ演算子の制限の詳細については、以下を参照してください。
オプションの互換性と制限
クエリ オプションの互換性と制限の詳細については、以下を参照してください。