Atlas provides several tools to help analyze slow queries executed on your clusters. See the following sections for descriptions of each tool. To optimize your query performance, review the best practices for query performance.
Performance Advisor
Performance Advisor は MongoDB が遅いと判断したクエリをモニターし、クエリ パフォーマンスを改善するための新しいインデックスを提案します。
Performance Advisor は次の情報を検討するために利用できます。
Tip
MongoDB MCP サーバーを使用して、AIクライアントからの Performance Advisor の推奨事項にアクセスすることもできます。このツールを使用すると、自然言語を介して Atlas クラスターと交流できます。詳細については、MongoDB MCP サーバーで Performance Advisor にアクセスするを参照してください。
クエリインサイト
使用可能な場合、プロジェクト概要ページには、低速クエリとサンプリングされた P95レイテンシに関するアラートと高レベルのメトリクスを含む View Query Insights セクションが含まれます。このセクションには、Query Insightsタブへのショートカットも含まれています。
次のツールは、[Query Insights] タブにあります。
クエリシェイプのインサイト
クエリ シェイプ インサイトは、低速で実行されるクエリを含むクエリ シェイプのパフォーマンス統計を表示します。最大 5 つのクエリ構造を選択して、メトリクスをチャートで確認できます。また、ホスト、シャード、時間範囲でフィルターして、プロジェクトに関連性の高いパフォーマンス メトリクスおよび統計をモニタリングできます。
名前空間のインサイト
Namespace Insights は、低速で実行されるクエリを含むコレクションに対するクエリ レイテンシの統計を表示します。最大で 5 つのネームスペースをピン留めしてチャートでメトリクスを表示できます。また、ホスト、シャード、時間範囲、オペレーション タイプでフィルターを適用し、プロジェクトにとって最も関連性の高いレイテンシ メトリクスおよび統計をモニタリングできます。
Query Profiler
Query Profiler には、低速で実行される操作とその主なパフォーマンス統計が表示されます。過去 7 日間以内に実行されたクエリのサンプルを、追加コストやパフォーマンス オーバーヘッドなしに調査できます。Query Profiler を有効にする前に、検討事項を参照してください。
リアルタイム パフォーマンス パネル(RTPP)
The Real-Time Performance Panel identifies relevant database operations, evaluates query execution times, and shows the ratio of documents scanned to documents returned during query execution. RTPP is enabled by default.
クエリ パフォーマンスに関するベストプラクティス
クエリのパフォーマンスを最適化するために、次のベストプラクティスの採用を検討しましょう。
現在のインデックスに対応するクエリを作成すると、結果の検索に必要な時間が短縮します。
フィールドに多数の配列があるドキュメントは、検索とインデックスに多くの処理が必要になるため、作成しないようにします。
インデックスを最適化し、使用されていないインデックスや非効率的なインデックスは取り除きます。インデックスが多すぎると、書き込みパフォーマンスに悪影響が影響可能性があります。
Performance Advisor が最高の Impact スコアと最低の Average Query Targeting スコアと共に提案するインデックスの採用を検討します。
Performance Advisor が提案するインデックスが自分のインデックスの作成戦略と一致する場合、そのインデックスを作成しましょう。
The Performance Advisor cannot suggest indexes for MongoDB databases configured to use the ctime timestamp format. As a workaround, set the timestamp format for such databases to either iso8601-utc or iso8601-local.
未使用、冗長、非表示のインデックスを削除すると、書込みパフォーマンスの向上とストレージ スペースの開放につながります。