Configure BDR AutoPartition with analytics offload#
階層テーブルを実装するには、PGDテーブルで BDR AutoPartition を構成する必要があります。
これにより、次のことが可能になります。
テーブルの自動時間ベースのパーティショニング
古いパーティションのApache Iceberg形式のオブジェクトストレージへの自動オフロード
制御できます
新しいパーティションが作成される頻度
パーティションをオフロードするまでの経過日数analytics_offload_period
階層テーブルの仕組みの背景については、次を参照してください。 ハイブリッドマネージャーの階層化テーブル
前提条件#
AutoPartitionを構成する前に
分析オフロード用にPGDノードグループを構成しました。 Configure PGD node group for analytics offload
PGFSストレージの場所を作成している、および/またはIcebergカタログを構成している。 Configure PGFS storage for Tiered Tables
ターゲットテーブルを作成し、時間ベースの列たとえば
event_timestampによってパーティション化されています。
ステップ#
パーティション分割テーブルを作成しますまだ作成していない場合。
例
CREATE TABLE public.application_logs (
log_id BIGSERIAL,
event_timestamp TIMESTAMP WITH TIME ZONE NOT NULL,
application_name TEXT,
log_level VARCHAR(10),
message TEXT,
PRIMARY KEY (log_id, event_timestamp)
) PARTITION BY RANGE (event_timestamp);
テーブルのAutoPartitionを構成します。
例
SELECT bdr.autopartition (
relation := public.application_logs,
partition_increment := 1 month,
partition_initial_lowerbound := 2023-01-01 00:00:00,
managed_locally := TRUE,
analytics_offload_period := 6 months
);
partition_increment— 新しいパーティションを作成する頻度。partition_initial_lowerbound— パーティション作成の開始日。analytics_offload_period— パーティションをオフロードするための年齢しきい値たとえば 6か月。
AutoPartition構成を確認します。
SELECT * FROM bdr.partition_config WHERE relid = public.application_logs::regclass;
パーティショニングポリシーとanalytics_offload_period
が表示されます。
パーティションが作成されていることを確認します。
SELECT relname, relkind FROM pg_class WHERE relname LIKE application_logs_part_%;
AutoPartitionタスクを監視します。
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 relname = public.application_logs AND sql NOT LIKE %bdr.autopartition_create_partition%
ORDER BY ap_wi_finished_at DESC;
注#
AutoPartitionは、新しいパーティションを自動的に管理し、パーティションが対象になるとオフロードをトリガーします。
新しい値でbdr.autopartition()を再度実行することにより、いつでも**analytics_offload_periodを調整できます。
必要に応じて、テーブルでAutoPartitionを 一時停止/再開 できます。
次のステップ#
これでAutoPartitionの構成が完了しました。
階層テーブルのオフロードを監視し、ストレージ節約を検証できます Monitor Tiered Tables status and storage savings
階層テーブルを照会できます 。 PGD親テーブルには、ホットローカルおよびコールドオフロードパーティションが透過的に含まれます Query Tiered Tables from PGD and Lakehouse
必要に応じて、 PGDオフロードポリシー ができます。 Configure PGD node group for analytics offload
必要に応じて、 Icebergのストレージ場所 を最適化できます。 Configure PGFS storage for Tiered Tables
関連概念#
アーキテクチャの概要と階層テーブルの背後にある概念については、次を参照してください。 ハイブリッドマネージャーの階層化テーブル