Delta Lake Integration with Analytics Accelerator#

レイクハウスのコンテキストでのデルタ湖の理解#

デルタレイクは、アナリティクスアクセラレーターPGAAのレイクハウスアーキテクチャ内の基礎的なテーブルフォーマットとして機能し、大規模な分析ワークロードにACIDトランザクションとタイムトラベル機能を提供します。この統合により、PostgreSQLはオブジェクトストレージシステムに保存されているDelta Lakeテーブルを直接照会できるため、運用データベースと分析システム間の従来のETLパイプラインが不要になります。

このページは、Analytics Hubの一部です。完全なナビゲーションについては、次をご覧ください Analytics Hub — Analytics Accelerator Concepts — How-Tos (Runbook-Aligned)

Analytics AcceleratorのLakehouse Connectorは、ネイティブのDelta Lake読み取り機能を実装し、組織はデータを移行ずに既存のDelta Lake投資を活用できます。このアプローチでは、より広範なSparkエコシステムとの互換性を維持しながら、分析クエリ用にPostgreSQLの使い慣れたSQLインターフェイスを提供します。

アーキテクチャの概要#

Analytics Acceleratorアーキテクチャは、Lakehouse Connectorコンポーネントを介してアクセスできる、オープンレイクハウスエコシステム内にDelta Lakeテーブルを配置します。このコネクタは、PostgreSQLクエリをDelta LakeのParquetファイルとトランザクションログに対する最適化された操作に変換します。

システムアーキテクチャはコンピューティングをストレージから分離し、ワークロード要件に基づいて独立したスケーリングを可能にします。クエリ処理は、Delta Lakeのストレージ形式用に特別に設計された列指向データの最適化を実装する分析エンジン内で発生します。この分離により、従来の行ベースの処理と比較して、クエリパフォーマンスの大幅な向上を実現しながら、完全なSQL互換性を維持します。

デルタレイクテーブルフォーマット#

Delta Lakeは、_delta_log ディレクトリに保存される付随トランザクションログを含むParquetファイルとしてデータを構造化します。このトランザクションログは、すべてのテーブル変更の完全な履歴を維持し、規制コンプライアンスに不可欠なポイントインタイムクエリと監査機能を有効にします。

このフォーマットはオプティミスティック同時実行制御を実装し、ライターが変更を実行しているときに複数のリーダーがデータにアクセスできます。このデザインにより、データの更新中に分析ワークロードをブロックすることなく、一貫したクエリ結果が保証されます。 Analytics Acceleratorは、これらの一貫性保証を活用して、基になるデータが変更された場合でも、信頼性の高いクエリ結果を提供します。

Delta Lakeテーブル内のファイル構成は、クエリパターンに合わせた構成可能なパーティションスキームに従います。一般的なパーティショニング戦略には、時系列データの日付ベースのパーティショニングまたはリージョン分析の地理的パーティショニングが含まれます。 Analytics Acceleratorのクエリオプティマイザーは、関連するパーティションを自動的に特定し、データのスキャンを大幅に削減します。

統合機能#

Analytics Acceleratorは、Delta Lakeテーブルとの双方向統合を提供しますが、現在の運用展開は主に読み取り操作に焦点を当てています。 Lakehouse Connectorは、メタデータの同期、スキーマ検出、およびクエリ変換を透過的に処理します。

読み取り操作#

Delta Lakeテーブルに対するクエリの実行は、標準のPostgreSQL SQL構文を介して発生します。システムはDelta Lakeメタデータからテーブルスキーマを自動的に検出し、手動のスキーマ定義の必要性を排除します。列統計とパーティション情報はクエリの最適化をガイドし、効率的な実行プランを保証します。

タイムトラベルクエリーは、Delta Lakeのトランザクションログを使用して履歴テーブルバージョンにアクセスします。この機能は、規制報告、データ復旧、および変更分析にとって非常に貴重であることがわかります。組織は、別の履歴コピーを維持することなく、任意の時点で存在したデータを照会できます。

書き込み操作#

Analytics Acceleratorの主な焦点は引き続き読み取りの最適化ですが、アーキテクチャはDelta Lakeテーブルへの将来の書き込み機能をサポートします。現在の実装では、通常、操作上の書き込みにEDB Postgres分散PGDを使用し、分析処理のためにDelta Lakeへの定期的な同期を行います。

実際のアプリケーション#

統合分析プラットフォーム#

組織はDelta Lakeでアナリティクスアクセラレーターを実装して、業務データと履歴データにまたがる統合分析プラットフォームを作成します。リアルタイムの操作データはPostgreSQLにありますが、履歴データはDelta Lakeテーブルとして費用対効果の高いオブジェクトストレージに存在します。クエリは両方のデータソースに透過的にアクセスし、データを移動せずに完全な分析ビューを提供します。

金融サービス組織は、リスク分析にこのパターンを使用し、PostgreSQLの現在の取引ポジションとDelta Lakeの長年の履歴市場データを組み合わせます。統合クエリインターフェイスにより、フェデレーションクエリシステムの複雑さなしで、複数の期間にまたがる複雑なリスク計算が可能になります。

データレイクのモダナイゼーション#

未加工のファイル形式に基づいて構築された既存のデータレイクは、Delta Lakeのトランザクションの一貫性とスキーマの適用の恩恵を受けます。 Analytics Acceleratorは、これらの最新のデータレイクのクエリレイヤーを提供し、従来のデータベースに精通したビジネスアナリストのSQLアクセスを可能にします。

小売組織は、生のイベントログをDelta Lake形式に変換することにより、顧客分析を最新化します。 Analytics Acceleratorにより、マーケティングチームは、専門的なビッグデータのスキルを必要とするのではなく、使い慣れたSQLを使用して顧客の行動パターンを照会できます。

ストリーミング分析#

デルタレイクのストリーミングインジェストのサポートとアナリティクスアクセラレーターのクエリ機能との組み合わせにより、ストリーミングデータのほぼリアルタイムの分析が可能になります。イベントストリームはDelta Lakeに継続的に書き込みますが、アナリティクスアクセラレーターは、進行中の更新にもかかわらず、一貫したクエリ結果を提供します。

製造会社は、センサーデータがDelta Lakeテーブルにストリーミングされる生産ラインモニタリングにこのパターンを実装します。品質管理チームは、アナリティクスアクセラレーターを介して最近の生産メトリックを照会し、履歴分析は長期的な傾向とパターンを特定します。

パフォーマンスの最適化#

デルタレイクの効果的な統合には、フォーマットに固有のパフォーマンス特性と最適化戦略を理解する必要があります。

Zオーダーの最適化#

Delta Lakeは、Parquetファイル内の関連データを同じ場所に配置する技術であるZオーダーをサポートしています。この最適化により、Zオーダー列のフィルターのクエリパフォーマンスが劇的に向上します。 Analytics Acceleratorのクエリプランナーは、Zオーダーの列を認識し、データの局所性の利点を最大化する実行プランを生成します。

組織は通常、WHERE句で頻繁に使用される高カーディナリティ列をZオーダーします。トランザクションテーブルの顧客IDまたはイベントログのタイムスタンプフィールドは、クエリ時間を50〜80%削減できる一般的なZオーダー候補を表します。

ファイル圧縮#

ストリーミングインジェストによって作成された小さなファイルは、メタデータのオーバーヘッドを発生させ、読み取り効率を低下させます。通常の圧縮は、これらのファイルを最適なサイズのユニットに統合します。 Delta Lakeテーブルが128〜512 MBのファイルを維持する場合、Analytics Acceleratorのパフォーマンスが大幅に向上します。

圧縮プロセスはバックグラウンドメンテナンスタスクとして実行され、通常は使用率の低い期間にスケジュールされます。組織は、ほとんどの分析ワークロードに適した毎日のコンパクションを使用して、圧縮頻度と書き込みワークロード要件のバランスをとります。

キャッシュ戦略#

アナリティクスアクセラレーターは、Delta Lakeクエリの複数のキャッシュレイヤーを実装します。メタデータキャッシュは、反復的なトランザクションログ解析を排除しますが、データキャッシュは、頻繁にアクセスされるParquetファイルをローカルに保存します。これらのキャッシュは透過的に動作し、Delta Lakeテーブルが更新されると自動的に無効になります。

マテリアライズドビューは、複雑な集計用の追加キャッシュレイヤーを提供します。マテリアライズドビューは、大規模なDelta Lakeテーブルを繰り返しスキャンするのではなく、事前計算された結果をPostgreSQLに保存します。このアプローチは、何百万もの行を概要統計に集計するダッシュボードクエリに特に適しています。

移行の考慮事項#

既存のデータウェアハウスまたはデータレイク実装からDelta Lakeに移行する組織は、主要なアーキテクチャの違いと移行戦略を理解する必要があります。

従来のデータウェアハウスから#

データウェアハウスの移行は、通常、既存のシステムで現在の運用データを維持しながら、デルタレイクへの履歴データのアーカイブから始まります。移行期間中にアナリティクスアクセラレータークエリーは両方のシステムにまたがり、既存のプロセスを中断せずにユニファイドアクセスを提供します。

移行プロセスは、アナリティクスアクセラレーターの互換性レイヤーを介して既存のSQLクエリーを保持します。クエリリライトは、ほとんどの標準のSQL操作で自動的に発生しますが、複雑なウェアハウス固有の機能は変更が必要な場合があります。

Raw Data Lakesから#

トランザクションの一貫性を欠く生ファイル形式は、Delta Lake変換から大きな利益をもたらします。変換プロセスは、可能な場合は既存のParquetデータを保存しながら、トランザクションログとスキーマ適用を追加します。 Analytics Acceleratorは、変換されたテーブルへのSQLアクセスをすぐに有効にし、組織全体のデータアクセスを民主化します。

組織は通常、最初に高価値のデータセットを変換し、広範な移行を続行する前にクエリパフォーマンスとデータ品質を検証します。このインクリメンタルなアプローチにより、リスクを最小限に抑えながら、データの一貫性とクエリ機能の向上から即時の価値を提供します。

エコシステムの統合#

Analytics AcceleratorのDelta Lakeサポートは、より広範なレイクハウスエコシステムとの互換性を維持し、最新のデータアーキテクチャに不可欠なマルチエンジンアクセスパターンを有効にします。

Apache Sparkは、データエンジニアリングのワークロードを提供し続け、変換されたデータをDelta Lakeテーブルに書き込み、Analytics Acceleratorが分析処理のために照会します。この責任の分割により、各エンジンの強みを活用しながら、Delta Lakeでの単一の真実のソースを維持します。

ビジネスインテリジェンスツールは、標準のPostgreSQLドライバーを介してAnalytics Acceleratorに接続し、専用のコネクタを使用せずにDelta Lakeデータにアクセスします。この互換性、既存のレポートインフラストラクチャへの投資を維持しながら、分析機能をレイクハウスデータに拡張します。

機械学習プラットフォームは、Delta Lakeテーブルからトレーニングデータを直接読み取り、モデルトレーニングと分析レポートの一貫性を保証します。 Analytics Acceleratorは、 SQLクエリを介してデータ検証と品質チェックを提供し、モデルのトレーニングを開始する前にデータの問題を特定します。