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 ビューのリファレンス」を参照してください。