大小:457.36K 時長:02:36

在 6 月 10 日至 12 日於美國舊金山舉行的 Databricks Data+AI 峰會上,Databricks 宣佈將 Delta Live Tables(DLT)背後的技術貢獻給 Apache Spark 專案 ,這個專案中,它將被稱為 Spark 聲明式管道(Spark Declarative Pipelines)。 這一舉措將使 Spark 使用者更容易開發和維護流式管道,並進一步體現了 Databrick 對開源的承諾。
這個新特性允許開發人員定義數據流管道,而不需要在 Spark 中創建常見的命令式命令。 雖然這些變化簡化了編寫和維護管道代碼的任務,但使用者仍需要理解 Spark 的運行時行為,並能夠解決性能和正確性等問題。
在一篇描述新功能的博文中,Databricks 寫道,可以使用 SQL 語法或通過一個簡單的 Python SDK 來定義管道,該 SDK 聲明流式數據源、表及其關係,而不是編寫命令式 Spark 命令。 該公司聲稱這將減少對 Apache Airflow 等編排器管理管道的需求。
在後台,框架解釋查詢,然後創建依賴圖並優化執行計劃。
聲明式管道支援來自流式數據源(如 Apache Kafka 主題)的流表,並為存儲聚合和結果提供物化檢視。 物化檢視會在流表接收到新數據時自動更新。
Databricks 在其文檔中提供了 SQL 語法的概述 。 摘錄如下。 該示例基於紐約市 TLC 行程記錄數據集。
該示例展示了如何使用 CREATE STREAMING TABLE 命令定義流來構建管道,然後在後續查詢中使用 FROM 語句消費它們。 這個範例值得注意的是,能夠使用 CONSTRAIN ... EXPECT … ON VIOLATION 語法在管道中包含數據質量檢查。
雖然 Apache Spark 的更改尚未發佈,但許多文章已經描述了使用 Databricks DLT 的工程師的經驗。 在 Medium 上發表的一篇名為“ 為什麼我喜歡 Databricks 中的 Delta Live Tables”的文章中,Mariusz Kujawski 描述了 DLT 的功能以及如何最好地使用它們:“有了 DLT,你只需要幾個小時就可以構建一個攝取管道,相比之下,開發一個自定義框架需要幾天的時間。 此外,內置的數據質量保證提供了額外的可靠性層。 ”
除了用於定義管道的聲明式語法外,Spark 聲明式管道還支援變更數據捕獲(CDC)、批處理和流邏輯、內置重試邏輯和可觀測性鉤子。
聲明式管道正在被合併到 Spark 專案中。 該特性計劃在 2026 年 1 月發布的下一個 Spark 版本 4.10 中使用。 可以在工單 SPARK-51727 中查看 Apache Jira Spark 項目中進度。
原文連結:
https://www.infoq.com/news/2025/07/databricks-declarative-pipelines/
大會推薦:
8 月 22~23 日的 AICon 深圳站 將以 “探索 AI 應用邊界” 為主題,聚焦 Agent、多模態、AI 產品設計等熱門方向,圍繞企業如何通過大模型降低成本、提升經營效率的實際應用案例,邀請來自頭部企業、大廠以及明星創業公司的專家,帶來一線的大模型實踐經驗和前沿洞察。 一起探索 AI 應用的更多可能,發掘 AI 驅動業務增長的新路徑!











評論