Q: Performance Insights ではどのようにパフォーマンス問題の原因が示されますか?
パフォーマンスの問題は、データベース負荷グラフのスパイクとして、Amazon RDS マネジメントコンソール上の Performance Insights のセクションに表示されます。このグラフを見ることで、アプリケーションのどのようなタイプのリソースによってデータベース内で時間とリソースが消費されているか、すばやく知ることができます。コンソールを使用して、保持期間内の任意の期間にズームインできます。負荷の高い期間を選択することで、SQL ステートメントのリストを、負荷への全体的な貢献度順に表示できます。
Q: Performance Insights はどのように私の Amazon RDS データベースインスタンスの負荷を評価できるのですか?
Performance Insights では、DB インスタンス内の接続されたセッションの状態が毎秒サンプリングされます。あるセッションでデータベース関連のオペレーションに時間がかかっている場合、Performance Insights によって、現在の時間、操作のタイプ (I/O、CPU、ロックなど)、現在の SQL ステートメントおよびその他のセッション属性が記録されます。時間の経過と共に、このサンプリングされたデータが、セッションがデータベースインスタンスの負荷にどのように影響しているかを特定するために使用されます。
Q: Amazon RDS インスタンス内部からパフォーマンスデータをクエリできますか?
いいえ。Performance Insights は、Amazon RDS API と Amazon RDS 管理コンソール経由でパフォーマンスデータの評価を行います。その中では、データベース内のどのテーブルにもデータは入力されず、SQL を介してデータベース内から取り出されるデータも提供されません。
Q: 自分のインスタンスで何が起こっているのかをリアルタイムで確認できますか?
はい。デフォルトでは、Performance Insights によって 1 時間分のパフォーマンスデータウィンドウが表示されます。この機能は、リアルタイムから数秒以内に最新のパフォーマンス情報を表示するように設計されています。
Q: Performance Insights のコストはどれくらいですか?
Performance Insights には 7 日間のパフォーマンスデータを保存する無料利用枠が含まれています。1~24 か月の追加保存は、わずかなインスタンス料金で利用可能です。API リクエストには十分な無料利用枠が設けられており、無料利用枠のしきい値を超えた場合のリクエストあたりの料金も手頃です。 詳しくは、こちらの料金ページをご覧ください。
Q: Performance Insights に保存されているパフォーマンスデータはどの程度まで見ることができますか?
Performance Insights には 7 日間のパフォーマンスデータを保存する無料利用枠が含まれています。わずかなインスタンス料金を追加することで最大 2 年間までの長期保存も可能です。
Q: 新しい Performance Insights インサイトはデフォルトで有効になっていますが、無効にできますか?
はい。インスタンス作成ウィザードを使用する場合、AWS コンソールで Performance Insights のオプションがデフォルトで選択されます。ウィザード内でオプションの選択をオフにすることで、Performance Insights を有効化しないことができます。または、パフォーマンスインサイトが有効化されているインスタンスで、インスタンスを編集して無効化することもできます。
Q: Performance Insights は、暗号化されたストレージを使用する Amazon RDS データベースインスタンスで動作しますか?
はい。
Q: DB 負荷とは何ですか? また、DB 負荷がパフォーマンスの問題を検出するために Performance Insights で使用される主要な測定メトリクスである理由を教えてください。
Performance Insights の核をなすのは、DB 負荷と呼ばれる 1 つの測定メトリクスです。このメトリクスはデータベース上で 1 つのアプリケーションがどの程度時間を費やしているかを特色づけます。DB 負荷は Average Active Sessions (AAS) 単位で測定されます。アクティブなセッションとは、データベースエンジンに作業を送信し、そこからの応答を待っている接続 (セッション) です。たとえば、SQL ステートメントをデータベースインスタンスに送信すると、インスタンスがそのクエリを処理している間、そのセッションは「アクティブ」とみなされます。特定の瞬間にインスタンス内でアクティブになっているセッション数をカウントし、時間内の平均を出すことで、あるインスタンスがどれほどビジーであるか、セッションでどれほどの時間がインスタンスの応答待ちに費やされているかを示すメトリクスが得られます。これが DB 負荷です。Performance Insights ではアクティブなセッションをカウントし、軽量のサンプリングメカニズムを使用して毎秒セッションごとの属性を記録します。サンプリングされたデータは暗号化され、さまざまな単位に集約され、API で利用されたあと、Amazon RDS 管理コンソールの DB 負荷グラフに表示されます。
Q: Performance Insights を有効にするためにデータベースに何か特別な処理を行わなければなりませんか?
いいえ。ただし、一部のデータベースエンジンでは、追加のパフォーマンス追跡を有効にすることで、Performance Insights がさらに効果的に機能します。たとえば、pg_stat_statement という拡張子が Aurora 上で PostgreSQL と互換するように設定されていると、Performance Insights は PostgreSQL ネイティブの SQL 識別子を使用して、記述にラベルを付けるためその拡張子により提供される追加的な情報を活用します。
Q: Performance Insights を有効にするとデータベースのパフォーマンスに影響が及びますか?
Performance Insights のエージェントは、データベースのワークロードを邪魔しないように設計されています。Performance Insights では、過大な負荷やリソースの枯渇が検出された場合、その処理は後退し、データの収集は継続されるものの、安全なときにのみ実行されるようになります。Aurora PostgreSQL の pg_stat_statement などのようなデータベースオプションは、一部のデータベースリソースを使用するため、パフォーマンスに影響する可能性があります。アプリケーションのワークロードによっては、これらのオプションを有効にするかどうかが一部のシステムに影響します。AWS では、本番稼働用システムで有効にする前に、ワークロードに対してデータベースオプションをテストすることを推奨します。
Q: 拡張モニタリングを使用し続けるべきですか、それとも Performance Insights を使用するべきですか?
拡張モニタリングを使用して O/S メトリクスのモニタリングを行っているお客様は、引き続き拡張モニタリングでデータを取得してください。
Q: Performance Insights に格納されたデータは暗号化されていますか?
はい。Performance Insights では、機密性を持つ可能性があるすべてのデータを、所有する AWS Key Management Service (KMS) キーで暗号化します。データは、転送中と保管中のいずれも暗号化されます。AWS の従業員は、機密性を持つ可能性があるパフォーマンスデータへのアクセスや表示を実行できません。Amazon RDS にフルアクセス可能な AWS アカウントのユーザーのみが Performance Insights を表示できます。
Q: Amazon RDS データベースインスタンスを停止した場合、Performance Insights データの保持期間はどうなりますか?
Performance Insights が有効になっている Amazon RDS インスタンスを停止しても、インスタンスの履歴データ保持期間や可視性には影響しません。インスタンスの停止期間中はデータなしになります。
Q: Performance Insights と既存のパフォーマンスツールをどのように結合できますか?
Performance Insights では、お客様とサードパーティがパフォーマンスインサイトの貴重なデータを活用できるよう設計された API が公開される予定です。
Q: サードパーティのパフォーマンスツールを Performance Insights と統合する方法はありますか?
はい。Performance Insights は、お客様とサードパーティーが Performance Insights の貴重なデータを活用することを可能にするために設計された API を公開しています。
Q: Performance Insights は Amazon RDS が利用できるすべての AWS リージョンで利用できますか?
はい。Performance Insights は、AWS GovCloud リージョンを含むすべての AWS リージョンで利用できます。
Q: Performance Insights は既存のインスタンスでオンにできますか?
はい。Amazon RDS Performance Insights は、Performance Insights を有効化するようインスタンスを変更すれば、既存の Amazon RDS インスタンスでも使用できます。
Q: Performance Insights ではデータベースインスタンスのストレージが使用されますか?
いいえ。Performance Insights は Amazon RDS インスタンスのストレージ領域を使用しません。
Q: Performance Insights では、どのような点が対象データベースエンジンにより違うのですか?
Performance Insights は、Amazon RDS のすべてのデータベースエンジンで共通のアプローチ、見た目、および使用感が得られるよう設計されています。待機イベントや SQL 識別子などの特定の属性はエンジンの種類によって異なるため、Performance Insights でもデータベースエンジンにより異なります。Performance Insights の基本原則の 1 つは、データベースエンジンの既存の概念、識別子、および属性をそのまま維持することです。通常、Performance Insights では待機イベントと他のエンジン固有属性への再解釈や名前変更は行わず、データベースエンジンによってレポートされたものをそのまま表示します。
Q: Performance Insights はマルチ AZ インスタンスとリードレプリカのインスタンスで動作しますか?
はい。Aurora のレプリカは独立したインスタンスなので、それらのインスタンスでの Performance Insights はお客様が有効または無効にできます。
Q: Performance Insights からデータをエクスポートできますか?
現時点では使用できません。今後、Performance Insights にデータエクスポート機能が追加される予定です。ただし、Performance Insights で取得されたデータは、API を通じて利用できるようになっています。
Q: パフォーマンス分析のために、データを後で Performance Insights に再インポートできますか?
いいえ。Performance Insights では、インスタンスから直接収集されたデータのみ表示されます。しかしながら、Performance Insights で取得したデータは API 経由で利用可能で、分析は Amazon Athena、Amazon Redshift、Amazon Redshift Spectrum、Amazon Quicksight など AWS の分析向けサービスで実行可能です。