Aurora DSQL のシステムテーブルとコマンド
Aurora DSQL でサポートされているシステムテーブルとカタログについては、以下のセクションを参照してください。
システムテーブル
Aurora DSQL は PostgreSQL と互換性があるため、PostgreSQL の多くのシステムカタログテーブル
重要な PostgreSQL カタログテーブルとビュー
次の表は、Aurora DSQL で使用できる最も一般的なテーブルとビューを示しています。
| 名前 | 説明 |
|---|---|
|
|
すべてのスキーマに関する情報 |
|
|
すべてのテーブルに関する情報 |
|
|
すべての属性に関する情報 |
|
|
(事前) 定義ビューに関する情報 |
|
|
すべてのテーブル、列、インデックス、および同様のオブジェクトに関する説明 |
|
|
プランナー統計の表示 |
|
|
ユーザーに関する情報 |
|
|
ユーザーとグループに関する情報 |
|
|
すべてのインデックスのリスト |
|
|
テーブルの制約のリスト |
サポートされているカタログテーブルとサポートされていないカタログテーブル
次の表は、Aurora DSQL でサポートされているテーブルとサポートされていないテーブルを示しています。
| 名前 | Aurora DSQL に適用可能 |
|---|---|
|
|
なし |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
あり |
|
|
いいえ ( |
|
|
はい |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
あり |
|
|
なし |
|
|
あり |
|
|
なし |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
あり |
|
|
なし |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
なし |
サポートされているシステムビューとサポートされていないシステムビュー
次の表は、Aurora DSQL でサポートされているビューとサポートされていないビューを示しています。
| 名前 | Aurora DSQL に適用可能 |
|---|---|
|
|
なし |
|
|
なし |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
あり |
|
|
なし |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
あり |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
|
|
なし |
sys.jobs および sys.iam_pg_role_mappings ビュー
Aurora DSQL は、次のシステムビューをサポートしています。
sys.jobs-
sys.jobsは、非同期ジョブに関するステータス情報を提供します。例えば、非同期インデックスを作成すると、Aurora DSQL はjob_uuidを返します。このjob_uuidとsys.jobsを使って、ジョブのステータスを検索できます。SELECT * FROM sys.jobs WHERE job_id = 'example_job_uuid'; job_id | status | details ------------------+------------+--------- example_job_uuid | processing | (1 row) sys.iam_pg_role_mappings-
ビュー
sys.iam_pg_role_mappingsには、IAM ユーザーに付与されたアクセス許可に関する情報が表示されます。例えば、DQSLDBConnectが Aurora DSQL に管理者以外のユーザーへのアクセスを許可する IAM ロールで、testuserという名前のユーザーにDQSLDBConnectロールと対応するアクセス許可が付与されている場合、sys.iam_pg_role_mappingsビューをクエリして、どのユーザーにどのアクセス許可が付与されているかを確認できます。SELECT * FROM sys.iam_pg_role_mappings;
pg_class テーブル
pg_class テーブルには、データベースオブジェクトに関するメタデータが保存されます。テーブル内の行数の概算数を取得するには、次のコマンドを実行します。
SELECT reltuples FROM pg_class WHERE relname = 'table_name';
このコマンドにより、以下のような出力が返されます。
reltuples -------------- 9.993836e+08
ANALYZE コマンド
ANALYZE コマンドは、データベース内のテーブルの内容に関する統計を収集し、結果を pg_stats システムビューに保存します。その後、クエリプランナーはこれらの統計を使用して、最も効率的なクエリの実行プランを決定します。
Aurora DSQL では、明示的なトランザクション内で ANALYZE コマンドを実行することはできません。ANALYZE はデータベーストランザクションのタイムアウト制限の対象ではありません。
手動介入の必要性を減らし、統計を一貫して最新の状態に保つために、Aurora DSQL はバックグラウンドプロセスとして ANALYZE を自動的に実行します。このバックグラウンドジョブは、テーブルで観測された変化率に基づいて自動的にトリガーされます。これは、前回の分析以降に挿入、更新、または削除された行 (タプル) の数にリンクされます。
ANALYZE はバックグラウンドで非同期的に実行され、そのアクティビティは次のクエリを使用してシステムビュー sys.jobs でモニタリングできます。
SELECT * FROM sys.jobs WHERE job_type = 'ANALYZE';
主な考慮事項
注記
ANALYZE ジョブは、Aurora DSQL の他の非同期ジョブと同様に請求されます。テーブルを変更すると、自動バックグラウンド統計収集ジョブが間接的にトリガーされ、関連するシステムレベルのアクティビティが原因で計測料金が発生する可能性があります。
バックグラウンド ANALYZE ジョブは自動的にトリガーされ、手動 ANALYZE で収集するタイプの統計と同じものを収集し、デフォルトでユーザーテーブルに適用します。システムテーブルとカタログテーブルは、この自動プロセスから除外されます。