dba_plans ビューで Aurora PostgreSQL クエリ計画を検証する - Amazon Aurora

dba_plans ビューで Aurora PostgreSQL クエリ計画を検証する

apg_plan_mgmtロールを付与されたデータベースユーザーと管理者は、に保存されている計画を表示および管理できますapg_plan_mgmt.dba_plans。Aurora PostgreSQL DB クラスターの管理者 (rds_superuser権限を持つ人) は、クエリ計画管理を行う必要があるデータベースユーザーにこのロールを明示的に付与する必要があります。

apg_plan_mgmtビューには、Aurora PostgreSQL DB クラスターのライターインスタンス上のすべてのデータベースのすべてのマネージド SQL ステートメントの計画履歴が含まれます。このビューでは、計画、その状態、最終使用日時、その他すべての関連詳細を確認できます。

正規化と SQL ハッシュ」で説明しているように、管理計画はそれぞれ、SQL ハッシュ値と計画ハッシュ値を組み合わせて識別されます。これらの識別子を使用すると、Amazon RDS Performance Insights などのツールを使用して個別の計画のパフォーマンスを追跡できます。Performance Insights の詳細については、「Amazon RDS Performance Insights の使用」を参照してください。

管理計画のリスト化

管理計画をリスト化するには、apg_plan_mgmt.dba_plans ビューの SELECT ステートメントを使用します。次の例では、dba_plans ビューに、承認済みの計画および未承認の計画を識別する status などの列が表示されます。

SELECT sql_hash, plan_hash, status, enabled, stmt_name FROM apg_plan_mgmt.dba_plans; sql_hash | plan_hash | status | enabled | stmt_name ------------+-----------+------------+---------+------------ 1984047223 | 512153379 | Approved | t | rangequery 1984047223 | 512284451 | Unapproved | t | rangequery (2 rows)

読みやすくするために、表示されるクエリと出力には、dba_plans ビューの一部の列のみがリストされています。詳細については、「Aurora PostgreSQL 互換エディションの apg_plan_mgmt.dba_plans ビューのリファレンス」を参照してください。