DB インスタンスのパフォーマンスインサイトメトリックス - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

DB インスタンスのパフォーマンスインサイトメトリックス

パフォーマンスインサイトは、次のセクションで説明するように、さまざまなタイプのメトリックを監視します。

データベース負荷

データベースロード (DBLoad) は、データベース内のアクティビティレベルを測定するパフォーマンスインサイトの重要な指標です。1 秒ごとに収集され、自動的に Amazon に公開されますCloudWatch。平均アクティブセッション (AAS) における DB インスタンスのアクティビティを表します。AAS とは、SQL クエリを同時に実行しているセッションの数です。ザ・DBLoadメトリックは、待機時間、SQL、ホスト、ユーザー、データベースの 5 つのディメンションのいずれかを使用して解釈できるという点で、他の時系列メトリックとは異なります。これらのディメンションはサブカテゴリですDBLoadメトリック。これらは次のように使用できますスライスバイデータベース負荷のさまざまな特性を表すカテゴリ。データベース負荷の計算方法の詳細については、を参照してください。データベースロードAmazon RDS のドキュメントに記載されています。

次の画面図は、パフォーマンスインサイトツールを示しています。

パフォーマンスインサイトツールのデータベースロード

ディメンション

  • 待機イベントは、データベースセッションが処理を続行するためにリソースまたは別の操作が完了するまで待機する条件です。次のような SQL ステートメントを実行する場合SELECT * FROM big_tableまた、このテーブルが割り当てられた InnoDB バッファープールよりもはるかに大きい場合は、セッションが待機する可能性が高くなりますwait/io/file/innodb/innodb_data_fileデータファイルに対する物理的な I/O 操作によって発生する待機イベント。待機イベントは、パフォーマンスのボトルネックの可能性を示すため、データベース監視にとって重要な要素です。待機イベントは、セッション内で実行している SQL ステートメントが待機に最も時間を費やしているリソースと操作を示します。たとえば、wait/synch/mutex/innodb/trx_sys_mutexイベントは、データベースの使用率が高く、トランザクション数が多い場合に発生し、wait/synch/mutex/innodb/buf_pool_mutexイベントは、スレッドが InnoDB バッファープールのロックを取得してメモリ内のページにアクセスしたときに発生します。MySQL と MariaDB のすべての待機イベントの詳細については、を参照してください。待機イベント概要テーブルMySQL のドキュメントを参照してください。インストゥルメント名の解釈方法については、以下を参照してください。パフォーマンス・スキーマ・インストゥルメントの命名規則MySQL のドキュメントを参照してください。

  • SQLデータベース全体の負荷に最も寄与している SQL 文が表示されます。ザ・上部の寸法下にあるテーブルデータベースロードAmazon RDS パフォーマンスインサイトのグラフはインタラクティブです。SQL ステートメントに関連する待機イベントの詳細なリストを表示するには、のバーをクリックします。待機時間によるロード (AAS)コラム。リストから SQL ステートメントを選択すると、Performance Insightsは関連する待機イベントをデータベースロードのチャートと SQL ステートメントのテキストSQL テキストセクション。SQL 統計は、の右側に表示されます上部の寸法テーブル。

  • ホスト接続しているクライアントのホスト名を表示します。このディメンションは、どのクライアントホストがほとんどの負荷をデータベースに送っているかを特定するのに役立ちます。

  • ユーザデータベースにログインしているユーザーごとにデータベース負荷をグループ化します。

  • [データベース]DB ロードを、クライアントが接続しているデータベースの名前でグループ化します。

カウンターメトリクス

カウンターメトリックスは累積的なメトリックスで、DB インスタンスの再起動時にのみ値が増加またはゼロにリセットされます。カウンタメトリックの値を以前の値に戻すことはできません。これらの指標は、単調に増加する単一のカウンターを表しています。

  • ネイティブカウンターは Amazon RDS ではなくデータベースエンジンによって定義されるメトリックスです。例:

    • SQL.Innodb_rows_insertedInnoDB テーブルに挿入された行の数を表します。

    • SQL.Select_scanは、最初のテーブルのフルスキャンを完了したジョインの数を表します。

    • Cache.Innodb_buffer_pool_readsInnoDB エンジンがバッファープールから取得できず、ディスクから直接読み取る必要があった論理読み取りの数を表します。

    • Cache.Innodb_buffer_pool_read_requests論理的な読み取り要求の数を表します。

    すべてのネイティブメトリックの定義については、を参照してください。サーバーステータス変数MySQL のドキュメントを参照してください。

  • 非ネイティブカウンターアマゾン RDS によって定義されています。これらのメトリックは、特定のクエリを使用して取得することも、計算に2つ以上のネイティブメトリックを使用して取得することもできます。非ネイティブのカウンターメトリックは、レイテンシー、比率、ヒット率を表すことができます。例:

    • Cache.innoDB_buffer_pool_hitsInnoDB がディスクを利用せずにバッファープールから取得できた読み取り操作の数を表します。ネイティブカウンターメトリックから次のように計算されます。

      db.Cache.Innodb_buffer_pool_read_requests - db.Cache.Innodb_buffer_pool_reads
    • IO.innoDB_datafile_writes_to_diskInnoDB データファイルのディスクへの書き込み操作の数を表します。キャプチャされるのはデータファイルに対する操作だけで、ロギングの二重書き込み操作ややり直し書き込み操作はキャプチャされません。次のように計算されます。

      db.IO.Innodb_data_writes - db.IO.Innodb_log_writes - db.IO.Innodb_dblwr_writes

DB インスタンスのメトリクスをパフォーマンスインサイトダッシュボードで直接視覚化できます。選択指標の管理、選択してくださいデータベースメトリクスタブをクリックし、次の図に示すように、目的のメトリックを選択します。

パフォーマンスインサイトの DB インスタンスメトリクスの選択

を選択してくださいグラフを更新ボタンをクリックすると、次の図に示すように、選択したメトリックが表示されます。

パフォーマンスインサイトの DB インスタンスメトリクスの表示

SQL 統計

Performance Insightsは、クエリが実行されている1秒ごと、およびSQL呼び出しごとに、SQLクエリに関するパフォーマンス関連のメトリックを収集します。一般的に、パフォーマンスインサイトはSQL 統計情報ステートメントレベルとダイジェストレベルで ただし、MariaDB インスタンスと MySQL DB インスタンスの場合、統計はダイジェストレベルでのみ収集されます。

  • ダイジェスト統計は、同じパターンであっても最終的にはリテラル値が異なるすべてのクエリを組み合わせた指標です。ダイジェストは、特定のリテラル値を変数に置き換えます。次に例を示します。

    SELECT department_id, department_name FROM departments WHERE location_id = ?
  • 統計を表す指標があります1 秒あたりダイジェストされた各 SQL ステートメントについて。たとえば、sql_tokenized.stats.count_star_per_sec1 秒あたりの呼び出し数 (つまり、SQL ステートメントが 1 秒間に何回実行されたか) を表します。

  • パフォーマンスインサイトには、次のような指標も含まれています1 回の通話SQL ステートメントの統計情報。たとえば、sql_tokenized.stats.sum_timer_wait_per_callは、呼び出しごとの SQL ステートメントの平均レイテンシーをミリ秒単位で示します。

SQL 統計は、パフォーマンスインサイトダッシュボードのトップ SQLのタブ上部の寸法テーブル。

SQL 統計