Delta Lake
==========

Delta Lake は、ACID 保証、スキーマの適用、タイム
トラベル、スケーラブルなパフォーマンスを備えた最新のデータ
レイクを強化するオープン ソースのテーブル形式とトランザクション
レイヤーです。

EDB は、Analytics Accelerator の一部として Delta Lake
テーブルをクエリするためのファーストクラスのサポートを可能にし、大規模なレイクハウス
データで Postgres SQL を操作できるようにします。

Hybrid Manager (HM) 内で Delta Lake
が使用および管理される方法の詳細については、 `Delta Lake <https://enterprisedb.com/docs/edb-postgres-ai/hybrid-manager/analytics/delta_lake>`_ 
を参照してください。

Delta Lakeとは
--------------

Delta Lake は、S3、GCS、Azure Data Lake Storage などのオブジェクト
ストレージ システムにデータベースのような信頼性と一貫性を追加します。

主な特徴:

- 強力なデータ一貫性を備えたACIDトランザクション

- スキーマの強制とスキーマの進化のサポート

- データの履歴バージョンを照会するためのタイムトラベル

- バッチおよびストリーミングのサポート

- `Apache Parquet <https://parquet.apache.org/>`_  上にトランザクション ログ (``_delta_log`` )
  を備えたオープン フォーマット

関連概念: :ref:`オープンテーブル形式 <オープンテーブル形式>` 

Delta LakeがEDB分析にとって重要な理由
-------------------------------------

Delta Lake のサポートにより、Analytics Accelerator
は次のことが可能になります。

- Postgres SQLを使用して既存の Delta Lake テーブルをクエリする

- Postgres、Spark、Trino、Presto など、相互運用可能なデータ
  アーキテクチャをサポートします。

- システム間の不要なデータの重複や移動を排除

- Lakehouse
  クラスター内の分析クエリに、管理されたバージョン管理されたデータを提供する

関連概念: :ref:`EDB Postgres Lakehouse <EDB Postgres Lakehouse>` 

EDBがDelta Lakeを活用する方法
-----------------------------

EDB Postgres Lakehouse クラスターは、PGAA 拡張機能を通じて Delta Lake
データへのアクセスを提供します。

- ``CREATE TABLE ... USING PGAA WITH (pgaa.format = 'delta', ...)``
  を使用して Delta Lake 外部テーブルを定義する

- `Apache DataFusion <https://datafusion.apache.org/>`_  を使用したベクトル化実行により、Parquet ベースの Delta
  Lake テーブルを効率的にクエリします。

- スキーマの進化やタイムトラベルなどの Delta Lake 機能のメリットを享受

現在の主なサポート: 既存の Delta Lake テーブルのクエリ。PGD
オフロードは現在 Iceberg を対象としています。Delta
読み取りサポートにより、既存の Delta ベースのデータ
レイクとの統合が可能になります。

一般的な使用例
--------------

.. csv-table::
  :header: Use case,Delta Lake + Analytics Accelerator
  :widths: 10,30
  :align: left
  :class: longtable

  Business intelligence reporting,Query Delta Lake tables using Postgres SQL and BI tools
  Data science and machine learning,Access Delta tables for model training and feature engineering
  Data lake governance,Utilize Delta’s ACID guarantees with Lakehouse SQL access
  Cross-platform interoperability,"Query Delta Lake data alongside Spark, Trino, and Postgres Lakehouse"

役割ベースのガイダンス
----------------------

- :ref:`データベース管理者 (DBA) <データベース管理者 (DBA)>` 

- :ref:`Data scientist / analyst <a persona-based guide>` 

- :ref:`DevOps / SRE <a persona-based guide>` 

- :ref:`アプリケーション開発者 <アプリケーション開発者>` 

学習パス
--------

- :ref:`Analytics Accelerator 101: Foundational concepts <Foundational concepts>` 

- :ref:`Analytics Accelerator 201: Practical application and core solutions <Practical application and core solutions>` 

- :ref:`Analytics Accelerator 301: Advanced techniques and optimization <Advanced techniques and optimization>` 

関連概念
--------

- :ref:`データレイクハウス <データレイクハウス>` 

- :ref:`列指向ストレージ形式 <列指向ストレージ形式>` 

- :ref:`ストレージとコンピューティングの分離 <ストレージとコンピューティングの分離>` 

- :ref:`オープンテーブル形式 <オープンテーブル形式>` 

次のステップ
------------

**ハイブリッド マネージャー ユーザー向け**

- `Delta Lake <https://enterprisedb.com/docs/edb-postgres-ai/hybrid-manager/analytics/delta_lake>`_ 

**ハウツーガイド**

- `Query Delta Lake tables <https://enterprisedb.com/docs/edb-postgres-ai/hybrid-manager/analytics/learn/how-to/query-delta-lake-tables.mdx>`_ 

- `Configure PGFS for Delta Lake <https://enterprisedb.com/docs/edb-postgres-ai/hybrid-manager/analytics/learn/how-to/configure-delta-pgfs.mdx>`_ 

- :ref:`Performance tuning for Delta Lake queries <Queries>` 

:ref:`Analytics Accelerator learning guide <learn>`  でさらに詳しく調べてください。
