共用方式為


Azure Databricks 中的所有 Delta 項目為何?

本文介紹 Azure Databricks 上統稱為 Delta 的技術。 Delta 是指與 Delta Lake 開放原始碼 項目中相關的技術。

本文回答:

  • Azure Databricks 中的 Delta 技術為何
  • 他們做什麼? 或者他們用途為何?
  • 它們與彼此有什麼關聯和區別?

Delta 專案用途為何?

Delta 是 Delta Lake 引進的詞彙,這是將數據和數據表儲存在 Databricks Lakehouse 中的基礎。 Delta Lake 被設想為統一的數據管理系統,用來處理交易即時和批次巨量數據,方法是使用以檔案為基礎的事務歷史記錄來擴充 Parquet 數據檔,以進行 ACID 交易和可調整的元數據處理。

Delta Lake:Lakehouse 的 OS 數據管理

Delta Lake 是一種開放原始碼儲存層,藉由在儲存在雲端記憶體的數據上新增交易式儲存層,為數據湖帶來可靠性(在 AWS S3、Azure 儲存體 和 GCS 上)。 它允許 ACID 交易、數據版本設定和復原功能。 它可讓您以統一的方式處理批次和串流數據。

Delta 表建置在這個儲存層之上,提供表格抽象,讓您可以輕鬆使用 SQL 和 DataFrame API 來處理大規模結構化資料。

Delta tables:預設資料表結構

Delta 數據表是 Azure Databricks 中的預設數據表格式,是 Delta Lake 開放原始碼 資料架構的功能。 增量表(Delta tables)通常用於數據湖,數據可以通過串流或大量批次進行導入。

請參閱:

DLT:數據管線

DLT 管理許多 Delta 資料表之間的數據流,從而簡化 ETL 開發和管理上數據工程師的工作。 管道是執行 DLT的主要單元。 DLT 提供宣告式管線開發、改善的數據可靠性,以及雲端規模的生產作業。 用戶可以在同一個數據表上執行批次和串流作業,而且數據可以立即可供查詢。 您可以定義要對數據執行的轉換,而 DLT 會管理工作協調流程、叢集管理、監視、數據品質及錯誤處理。 DLT 增強型自動調整可以處理尖峰且無法預測的串流工作負載。

請參閱 DLT 教學課程

Delta tables 與 DLT

Delta 表格是一種將數據儲存在資料表中的方式,而 DLT 允許您以宣告性地描述這些資料表之間的數據流動。 DLT 是一種宣告式框架,管理許多 delta 表,透過建立這些表並保持它們的最新狀態。 簡言之,Delta 數據表是數據表架構,而 DLT 是數據管線架構。

Delta:開放原始碼或專屬?

Azure Databricks 平臺的一項優點是,它不會將客戶鎖定為專屬工具:大部分的技術是由 Azure Databricks 貢獻的 開放原始碼 專案所提供。

Delta OSS 專案是範例:

DLT 是 Azure Databricks 中的專屬架構。

Azure Databricks 上的其他 Delta 項目為何?

以下是名稱中包含 Delta 的其他功能描述。

Delta Sharing

Delta Sharing 是安全數據共用的開放標準,可讓組織之間共享數據,而不論其計算平台為何。

Delta 引擎

巨量數據的查詢優化器,其使用 Databricks 中包含的 Delta Lake 開放原始碼 技術。 Delta 引擎通過將計算推送到數據來提升 Spark SQL、Databricks SQL 和 DataFrame 操作的效能。

Delta Lake 事務歷史記錄 (AKA DeltaLogs)

唯一事實來源會追蹤使用者對數據表所做的所有變更,以及 Delta Lake 保證原子性的機制。 請參閱 GitHub 上的 Delta 事務歷史記錄通訊協定

交易日誌是瞭解 Delta Lake 的關鍵,因為它是貫穿許多最重要功能的共同線索。

  • ACID 交易
  • 可調整的元數據處理
  • 時間移動
  • 以及其他。