Using tiered storage#
PGDは、 Postgresのベクトル化クエリエンジンおよびクラウドネイティブストレージ拡張機能である Postgres Analytics Accelerator (PGAA) との統合を介して、階層化ストレージをサポートします。 PGAAは、Apache Iceberg®やDelta Lakeのような列指向形式を使用してオブジェクトストレージのデータを管理し、ETLパイプラインを必要とせずに照会可能なPostgresテーブルとして公開します。
PGDとPGAAは一緒に、統合アーキテクチャ内で完全なデータライフサイクルを管理し、2つの異なるストレージ階層を作成します。
ホットティアPGD ミリ秒未満のレイテンシーと完全なACIDコンプライアンスを必要とする現在の操作データ用のローカルPostgreSQLストレージ。
コールド層PGAA 高速分析クエリ用に最適化されたApache Iceberg®またはDelta Lakeのようなカラムナフォーマットを使用した費用対効果の高いオブジェクトストレージ。
これらを組み合わせることで、統合されたPostgresインターフェイスを介した透過的なアクセスを維持しながら、高性能トランザクションストレージから費用対効果の高いデータレイクにデータをシームレスに移行できます。このアーキテクチャは、インパクトの高いさまざまなユースケースをサポートしています。
規制へのコンプライアンス 古いデータと監査証跡をオフロードして、長期的な保持を保証しながら、無駄のない高性能システムを維持します。
時系列とIoT センサーとイベントストリームの費用対効果の高いコールド履歴分析と、ホットな最近のデータを使用したリアルタイムダッシュボードのバランスをとります。
金融サービス トランザクションストレージコストを高騰させることなく、必要な大量の履歴取引レコードを管理します。
小売および季節的なビジネスサイクル 適応ポリシーを使用して、古いレコードをコールドストレージに階層化しながら、カスタマーサービスのためにピークシーズンの注文データをホットに保ちます。
テーブルタイプを理解する#
このアーキテクチャは、2つの異なるストレージ層ホット層ローカルSSD、ミリ秒未満のレイテンシーとコールド層オブジェクトストレージ、カラムナーフォーマットを実装しています。データは、次の3つの異なるテーブルタイプのいずれかに存在します。
Table type |
Storage location |
Behavior |
|---|---|---|
Heap |
Local disk only |
ホット層の標準のトランザクションテーブル。 |
Hybrid Transactional and Analytics Processing (HTAP) |
Local + object storage |
分析コピーにマッピングされたヒープテーブル。 PGDは、すべての変更をほぼリアルタイムで複製します。 |
PGAA |
Object storage only |
デルタまたはアイスバーグ形式で利用可能な純粋な分析コールドテーブル。 |
階層化ストレージ戦略#
運用ニーズに基づいて、層間でデータを移行するには3つの使用可能な方法があります。
階層テーブルの実装#
この方法では、 PGD AutoPartition を活用して、大容量データのライフサイクルを自動化します。ヒープテーブルは、次のパーティション構造に変換されます。
ホットパーティション 最近のデータは、アクティブな処理のヒープまたは
enable_replicationが有効になっている場合はHTAPとして残ります。コールドパーティション パーティションが経過期間のしきい値を超えると、PGDはそれらをオブジェクトストレージに大量コピーし、PGAAテーブルに変換し、ローカルディスク領域を再利用して、データを照会可能に維持します。
アナリティクスへの複製#
このメソッドは、テーブルをオブジェクトストレージ内の分析コピーと継続的に同期します。ヒープテーブルはHTAPテーブルに変換されます。ユーザーには、標準のトランザクションテーブルのように見えますが、分析コピーはバックグラウンドで維持されます。
トランザクションのスループットに負担を与えることなく、ほぼリアルタイムの同期を保証するために、PGAAはIceberg Merge-on-ReadMoRを使用します。これは、データブロック全体を書き換えるのではなく、小さな「削除ファイル」で変更を記録し、最小限のオーバーヘッドでデータレイクを最新の状態に保ちます。
アナリティクスへのオフロード#
この方法は、
HTAPテーブルのローカルディスク領域をすぐに再利用し、オブジェクトストレージPGAAテーブルにコピーのみを残す1回限りの外科的方法を提供します。ローカルヒープコピーは切り捨てられ、テーブルアクセス方法はPGAA
に変更されます。これはオブジェクトストレージをポイントするようになりました。
トランザクション書き込み用にデータを戻す必要がある場合は、オブジェクトストレージからローカルのPostgresヒープにテーブルを復元できます。
Method |
Purpose |
Use case |
Origin Table |
Destination table |
|---|---|---|---|---|
Tiered tables |
Automated <br />lifecycle management |
High-volume time-series<br /> data where historical retention<br /> is critical and automated. |
Heap |
Heap or HTAP (hot)<br /> PGAA (cold) |
Replication |
Continuous <br />synchronization |
Replicating a transactional table<br /> in near real-time for general analytics. |
Heap |
HTAP |
Offload |
Selective<br /> archiving |
One-time, surgical removal and<br /> archival of a specific table. |
HTAP |
PGAA |
メタデータ管理#
PGAAは、 PGDと統合するときにオブジェクトストアのメタデータを管理する2つの方法をサポートしています。
カタログオフロード storage locations を使用してメタデータをデータファイルとともに保存し、オブジェクトストレージに直接接続します。ローカルファイルシステムの格納場所は、マルチノードPGD展開でのこの方法ではサポートされていません。共有オブジェクトストレージプロバイダーS3、GCS、またはAzureを使用します。
カタログ管理オフロード Iceberg RESTなどのメタデータ using a centralized catalog service からデータを分離します。