Monitor Tiered Tables status and storage savings#
階層テーブルを構成した後、以下を監視することが重要です。
どのパーティションがオフロードされたか
オフロードが予想通りに進行しているかどうか
PGDとオブジェクトストレージでのストレージ節約
PGDクラスターでのオフロード関連アクティビティ
階層化テーブルは次の両方からモニタできます。
PGDクラスター — SQL可観測性クエリを使用する
ハイブリッドマネージャー — モニタリングダッシュボードを介して環境で利用可能な場合
階層テーブルを監視する理由#
階層テーブルを監視すると、次のことができます。
オフロードが構成どおりに機能していることを検証します。
ホット/コールドパーティションが予想通りに動作していることを確認します。
ストレージの節約とパーティションのライフサイクルを追跡します。
オフロードまたはパーティション管理に関する問題のトラブルシューティング。
ゴール#
このハウツーを完了すると、次のことができるようになります。
オフロード用に構成されているテーブルとその現在のステータスを特定します。
AutoPartitionオフロードアクティビティとジョブの成功を監視します。
PGDプライマリストレージのストレージ節約を測定します。
可観測性クエリを使用して、パーティションの状態をモニタします。
前提条件#
始める前に
分析テーブルのステータスをモニタする#
分析オフロード用にマークされているPGDテーブルを表示するには
SELECT * FROM bdr.analytics_table;
役立つコラム
relation— テーブル名state—現在のオフロード状態enabled— 分析オフロードが有効かどうかdisabled— オフロードが無効かどうかin_progress— オフロードが現在実行されているかどうか
AutoPartitionオフロードアクティビティの監視#
オフロード関連タスクのAutoPartitionワークキューを確認します。
SELECT
wqs.workid, wis.ap_wi_started_at, wis.ap_wi_finished_at,
wis.ap_wi_status, "partition", sql
FROM bdr.taskmgr_local_workitem_status wis
RIGHT JOIN bdr.taskmgr_local_work_queue_status wqs
ON wis.ap_wi_workid = wqs.workid
WHERE sql NOT LIKE %bdr.autopartition_create_partition%
ORDER BY ap_wi_finished_at DESC;
これは、以下を追跡するのに役立ちます。
オフロードジョブが実行されたとき
ステータス成功/失敗
どのパーティションが影響を受けたのか
PGDのストレージ節約をモニタする#
親テーブルが使用するトランザクションストレージの削減を観察するには
SELECT pg_size_pretty(pg_total_relation_size(public.application_logs));
パーティションがオフロードおよび切り捨てられるため、このサイズは減少するはずです。
高度な可観測性 — ヒープとオフロードされたサイズ#
ローカルヒープとパーティションのオフロードサイズを比較するには EDBの推奨ランブックから高度なオブザーバビリティクエリを実行できます。
EDB PGAA-Tiered-Tables-Observability-Queries EDBパブリックrunbookリポジトリから可観測性クエリーを参照してください。
これにより、次のことができます。
パーティションごとのストレージをヒープとアイスバーグ/デルタに分割
残りのヒープサイズとオフロードされたサイズ
次にできること#
階層化テーブルのステータスとストレージ節約を監視できるようになったので、次のことができます。
パーティショニングとオフロードポリシーを調整します — 観察されたホット/コールドアクセスパターンに基づいて、必要に応じて
analytics_offload_periodを調整します。分析およびBIワークロードのクエリ階層テーブル
レイクハウスクラスターを適切にスケーリング して、オフロードされたデータクエリを処理します。
コンプライアンスと保持の目標を検証する — ポリシーごとに古いデータがオフロードおよび保持されることを確認します。