低速クエリの分析
- Cloud Managerへのプログラムによるアクセスのための OAuth 2.0認証はプレビュー機能として利用できます。
- 機能および関連するドキュメントは、プレビュー期間中にいつでも変更される可能性があります。 OAuth2.0 認証を使用するには、 Cloud Manager Public APIへのリクエストで使用する サービス アカウント を作成します。
Cloud Manager は、クラスターで実行される低速クエリの分析に役立つツールをいくつか提供します。 各ツールの説明については、次のセクションを参照してください。 クエリ パフォーマンスを最適化するには、 クエリ パフォーマンスのベスト プラクティスを検討します。
Performance Advisor
Performance Advisorは低速クエリをモニターし、クエリ パフォーマンスを向上させるための新しいインデックスを提案します。
Performance Advisor は次の情報を検討するために利用できます。
クエリインサイト
クエリ インサイト を使用して、コレクション レベルの クエリ レイテンシ を監視します。特定のホストおよび操作タイプに関するクエリ レイテンシのメトリクスと統計情報を表示できます。 ピン留めされた名前空間を管理し、対応するクエリ レイテンシ チャートに表示する名前空間を最大 5 つ選択できます。
プロファイラー
プロファイラーには、実行速度が遅い操作とその主要なパフォーマンス統計が表示されます。 過去 24 時間以内に実行されたクエリのサンプルを、パフォーマンス オーバーヘッドなしに調査できます。 プロファイラーを有効にする前に、検討事項 を参照してください。
クエリ パフォーマンスに関するベストプラクティス
クエリのパフォーマンスを最適化するために、次のベストプラクティスの採用を検討しましょう。
現在のインデックスに対応するクエリを作成すると、結果の検索に必要な時間が短縮します。
フィールドに多数の配列があるドキュメントは、検索とインデックスに多くの処理が必要になるため、作成しないようにします。
インデックスを最適化し、使用されていないインデックスや非効率的なインデックスは排除します。 インデックスが多すぎると、書込みパフォーマンスに悪影響が及ぶ可能性があります。
Performance Advisorが最高の Impactスコアと最低のAverage Query Targetingスコアを持つ推奨インデックスの採用を検討します。
Performance Advisor が提案するインデックスが自分のインデックスの作成戦略と一致する場合、そのインデックスを作成しましょう。
Performance Advisor は、 ctime タイムスタンプ形式を使用するように構成された MongoDB データベース向けのインデックスは提案できません。 回避策として、このタイプのデータベースにはタイムスタンプ形式をiso 8601 -utcまたはiso 8601 -local に設定します。
ローリング処理によるインデックスビルドを実行 して、レプリカセットとシャーディングされたクラスターへのインデックスビルドによるパフォーマンスへの影響を軽減します。
未使用、冗長、非表示のインデックスを削除すると、書込みパフォーマンスの向上とストレージ スペースの開放につながります。