FAQ: Atlas Search
項目一覧
- Atlas Search を有効にして使用する場合、料金はかかりますか。
- 部分的なstringを一致させるAtlas Searchクエリを実行できますか。
-
wildcard
またはregex
演算子を使用して、大文字と小文字を区別しない検索を実行できますか。 storedSource
はフィールドで大文字と小文字を区別しない照合をサポートしていますか。- Atlas Search インデックスはシャード上でどのように機能しますか。
- シャードキーを使用して、特定のシャードで Atlas Search クエリを実行できますか。
- クエリはプライマリ ノードまたはセカンダリ ノードで実行されますか?
- インデックスを重複できますか。
- Atlas Search はインデックス全体をメモリに保存しますか。
- 検索インデックスが消えてしまうのはなぜですか?
- クラウドバックアップ スナップショットから Atlas Search インデックスを復元できますか。
- Atlas Search は CSFLE暗号化クライアントで動作しますか?
- CSFLE で暗号化されたデータをクエリできますか。
- Atlas Search で Queryable Encryption を使用できますか。
- 時系列コレクションで Atlas Search を使用できますか。
- 新しい機能をリクエストできますか。
- MongoDB サポートは、検索インフラストラクチャとログにアクセスできますか。
- 複数のコレクションにわたって
クエリを実行できますか。
Atlas Search を有効にして使用する場合、料金はかかりますか。
いいえ、Atlas クラスターで Atlas Search を有効にしても、追加料金や料金は発生しません。 ただし、インデックス作成されたコレクションのサイズやインデックス定義などの要因によっては、クラスターでのリソース使用率が増加することがあります。 Atlas Search リソースの使用率を管理および制御するには、 専用の検索ノードを配置します。これはノードあたりの追加コストになります。 本番環境ではこれが推奨されています。
部分的なstringを一致させるAtlas Searchクエリを実行できますか。
はい。 次のAtlas Search演算子は、部分的なstringを用いたクエリをサポートします。
wildcard
または regex
演算子を使用して、大文字と小文字を区別しない検索を実行できますか。
はい。 カスタムアナライザ で ワイルドカード 演算子と 正規表現 演算子を使用して、大文字と小文字を区別しない検索を実行できます。次のトークナイザとトークン フィルターを使用してカスタムアナライザを定義し、ワイルドカードで大文字と小文字を区別しない検索を実行できます。
storedSource
はフィールドで大文字と小文字を区別しない照合をサポートしていますか。
はい。 Atlas SearchのstoredSourceオプションは元の値を保存します。 $search
returnStoredSource オプションを使用して返された結果に対して ステージの後に大文字と小文字を区別しない操作を実行するには、コレクションを作成するときにコレクションのデフォルトの照合強度を1
または2
に設定し、別の照合を指定しないでください。使用できません。
Atlas Search インデックスはシャード上でどのように機能しますか。
既存の Atlas Search インデックスを持つコレクションにシャードを追加すると、その Atlas Search インデックスに新しく追加されたシャードに対して最初の同期が行われます。各シャードの Atlas Search インデックスには、そのシャードに存在するコレクションのドキュメントのみが含まれます。詳細については、「グローバル コレクションのシャーディング」を参照してください。
警告
Atlas Search インデックスが既に存在するコレクションをシャーディングする場合、コレクションがシャードに表示され始めるときにクエリのダウンタイムが短時間発生することがあります。また、シャードを Atlas Search インデックスなどのシャーディングされたコレクションに追加する場合、追加されたシャードで最初の同期プロセスが完了するまで、そのコレクションに対する検索クエリは失敗します。詳しくは、「最初の同期プロセス」を参照してください。
シャードキーを使用して、特定のシャードで Atlas Search クエリを実行できますか。
いいえ、シャードキーを使用して、特定のシャードまたはシャードのサブセットに対して Atlas Search クエリを実行することはできません。 シャーディングされたクラスター環境では、Atlas Search クエリはすべてのシャードで実行されるスキャッター ギャザー クエリです。
ただし、ゾーンを使用してシャーディングされたコレクションをクラスター内のシャードのサブセットにわたって分散する場合、Atlas Search はクエリしているコレクションのシャードを含むゾーンにクエリをルーティングして、 $search
クエリを実行しますコレクションが配置されるシャード。
クエリはプライマリ ノードまたはセカンダリ ノードで実行されますか?
デフォルトでは、クエリはプライマリ ノードで実行されます。 読み込み設定 (read preference) を構成するか、レプリカセット タグを使用して読み込み設定 (read preference) を指定できます。 詳しくは、「 Atlas Search の概要 」を参照してください。
インデックスを重複できますか。
はい、次の手順を実行してインデックスを複製できます。
新しい Atlas Search インデックスを作成します。
Atlas Search JSON Editorを使用して新しいインデックスを作成します。 コピーしたインデックスを貼り付け、 Create Search Indexをクリックします。 Atlas Search インデックスの作成後、Atlas Search JSON Editorまたは Atlas Search Visual Index Builderで必要な編集を直接行うことができます。
Atlas Search はインデックス全体をメモリに保存しますか。
いいえ、Atlas Search はJVM ヒープ メトリクスにメモリを使用します。これは、検索インデックスのオートコンプリートとテキスト トークンを保存します。 他のデータベース エンジンと同様に、Atlas Search はインデックス ファイルの大部分をディスクに保存するため、基礎の OS ページ キャッシュのメリットが得られます。
検索インデックスが消えてしまうのはなぜですか?
データベース名とコレクション名が正しいことを入力したことを確認してください。 存在しないデータベース名またはコレクション名を入力すると、Atlas UI はインデックスを一時的に構築し、その後すぐに削除します。
$out
集計ステージを使用してコレクションを上書きする場合は、検索インデックスが宛先コレクションにコピーされないため、検索インデックスを削除して再作成する必要があります。 詳細については、「 $out インデックスの制約 」を参照してください。Atlas Search を使用するコレクションを再シャーディングする と、この操作により既存の検索インデックスが削除されます。 シャーディング操作が完了したら、コレクションの検索インデックスを手動で再構築する必要があります。
クラウドバックアップ スナップショットから Atlas Search インデックスを復元できますか。
M10+
MongoDB4.2 以降を実行中 専用クラスターの場合、Atlas はクラウドバックアップ スナップショットから Atlas Searchインデックス定義を復元します。 Atlas は検索インデックスデータを復元しないため、mongot
プロセスは復元されたすべての検索インデックス定義の最初の同期を実行します。クラスターに大規模な検索インデックスを定義した場合、スナップショットの復元中に遅延が発生する可能性があります。
Atlas Search は CSFLE 暗号化クライアントで使用できますか。
はい、 CSFLE暗号化クライアントを使用して、MongoDB バージョン6.0以降のデータに対して Atlas Search クエリを実行できます。
CSFLE で暗号化されたデータをクエリできますか。
いいえ、Atlas Search を使用してCSFLE で暗号化されたデータをクエリすることはできません。
Atlas Search で Queryable Encryption を使用できますか。
いいえ、 Queryable Encryptionは Atlas Search と互換性がありません。
時系列コレクションで Atlas Search を使用できますか。
いいえ、時系列コレクションでは Atlas Search を使用できません。
新しい機能をリクエストできますか。
はい、 MongoDB フィードバック エンジン を使用して新しい機能をリクエストしたり、既存のリクエストをアップ投票したりできます。
MongoDB サポートは、検索インフラストラクチャとログにアクセスできますか。
はい、MongoDB サポートは、専用ノードと同じロケーションのノードの両方の Atlas Search インフラストラクチャにアクセスし、これらのノードからmongot
ログをダウンロードできます。 ただし、必要に応じて組織レベルで MongoDB サポートへのアクセスをブロック し、その後 MongoDB サポートへのアクセスを24時間許可することができます。 詳細については、「 Atlas バックエンド インフラストラクチャへの MongoDB サポート アクセスの設定 」を参照してください。
複数のコレクションにわたって $search
クエリを実行できますか。
いいえ、ただし、$lookup
および $unionWith
を使用して、複数のコレクションにわたって検索クエリを実行することはできます。詳しくは、「コレクション全体で Atlas Search クエリを実行する方法」を参照してください。