apache-airflow-providers-databricks
更新日誌¶
7.0.0¶
注意
此供應商版本僅適用於 Airflow 2.9+,如 Apache Airflow 供應商支援政策 中所述。
重大變更¶
警告
所有已棄用的類別、參數和功能已從 databricks 供應商套件中移除。已導入以下重大變更
移除 已棄用的 DatabricksRunNowDeferrableOperator。 請改用 DatabricksRunNowOperator 並設定 deferrable=True。
移除 已棄用的 DatabricksSubmitRunDeferrableOperator。 請改用 DatabricksSubmitRunOperator 並設定 deferrable=True。
移除 已棄用的 return_tuple 參數 從 DatabricksSqlHook。 現在將 總是 傳回 namedtuple。
從 Databricks Provider 移除 棄用項目 (#44566)
錯誤修正¶
[FIX] 修正 databricks repair run deferrable (#44213)
fix(providers/databricks): 移除 傳遞給 repair_run 的 額外 引數 (#44140)
其他¶
新增 job_clusters 作為 可模板化的 參數 至 CreateDatabricksWorkflowOperator (#45022)
將 providers 中的 最低 Airflow 版本 提升 至 Airflow 2.9.0 (#44956)
將 databricks SDK 的 最低 版本 提升 至 3.0.0 (#43272)
更新 多個 providers 文件中的 DAG 範例 連結 (#44034)
將 整個 程式碼庫中的 execution_date 重新命名為 logical_date (#43902)
6.13.0¶
功能¶
允許 Databricks SQL hook 取消 超時的 查詢 (#42668)
在 DatabricksRunNowOperator 中新增 對 job_parameters 和 dbt_commands 的支援 (#43895)
為 Databricks provider 啟用 工作負載身分驗證 (#41639)
其他¶
新增 對 DbApiHook、 PrestoHook 和 TrinoHook 的分號剝離支援 (#41916)
6.12.0¶
功能¶
在 databricks provider 中新增 TimeoutError 作為 可重試的 錯誤 (#43137)
在 databricks provider 中新增 ClientConnectorError 作為 可重試的 錯誤 (#43091)
錯誤修正¶
DatabricksHook: 修正 status 屬性 以 在 async 模式下 與 ClientResponse 搭配使用 (#43333)
[DatabricksHook] 遵循 連線 設定 (#42618)
6.11.0¶
功能¶
將 'on_kill' 新增至 Databricks Workflow Operator (#42115)
其他¶
當 task_key>100 時,新增 警告 日誌 (#42813)
在 Databricks provider 中新增 debug 日誌 以 列印 Request/Response 資料 (#42662)
6.10.0¶
功能¶
(feat) databricks repair run 具有 reason match 和 適當的 新 設定 (#41412)
其他¶
當 min airflow 版本 >= 2.8.0 時,移除 已棄用的 method referance airflow.www.auth.has_access (#41747)
從 providers 中移除 已棄用的 soft_fail (#41710)
6.9.0¶
注意
此供應商版本僅適用於 Airflow 2.8+,如 Apache Airflow 供應商支援政策 中所述。
其他¶
將 providers 中的 最低 Airflow 版本 提升 至 Airflow 2.8.0 (#41396)
6.8.0¶
注意
此版本還原了 6.7.0 中圍繞與 XComs、Jinja 表達式值相容的 json 參數新增的部分功能
功能¶
新增 DatabricksWorkflowPlugin (#40724)
錯誤修正¶
DatabricksPlugin - 透過使用 url_for 重新導向 修正 dag 檢視 重新導向 URL (#41040)
修正 Databricks 運算子中的 具名 參數 模板化 (#40864)
其他¶
[Databricks Provider] 還原 PR #40864 和 #40471 (#41050)
6.7.0¶
功能¶
使 Databricks 運算子的 json 參數 與 XComs、 Jinja 表達式值 相容 (#40471)
錯誤修正¶
錯誤/修正 在 Databricks 運算子中支援 azure 受管理身分 (#40332)
6.6.0¶
功能¶
新增 DatabricksTaskOperator (#40013)
新增 DatabricksWorkflowTaskGroup (#39771)
錯誤修正¶
Databricks: 在 'list_jobs' 中可選擇性地包含 使用者名稱 (#40178)
其他¶
使用 最低直接依賴性解析 實作 每個供應商的 測試 (#39946)
降低 從 INFO 到 DEBUG 的 日誌 層級 以 減少 日誌 詳細程度 - Databricks provider 驗證 (#39941)
更新 Python 3.12 的 pandas 最低 需求 (#40272)
6.5.0¶
功能¶
新增 對 'DatabricksNotebookOperator' 的 deferrable 支援 (#39295)
錯誤修正¶
在 DatabricksCreateJobsOperator 中引發例外時,取得 所有 失敗任務的 錯誤 (#39354)
其他¶
更快的 'airflow_version' 匯入 (#39552)
簡化 'airflow_version' 匯入 (#39497)
BaseOperator 'defer' 的 更佳類型標註 (#39742)
6.4.0¶
注意
此供應商版本僅適用於 Airflow 2.7+,如 Apache Airflow 供應商支援政策 中所述。
功能¶
新增 DatabricksNotebookOperator (#39178)
新增 通知 設定 參數 (#39175)
[FEAT] 在 DatabricksRunNowDeferrableOperator 中,使用主要的 notebook 錯誤 引發 例外 (#39110)
其他¶
將 providers 中的 最低 Airflow 版本 提升 至 Airflow 2.7.0 (#39240)
6.3.0¶
功能¶
將 cancel_previous_run 新增至 DatabricksRunNowOperator (#38702)
在 deferrable 模式下,新增 對 DatabricksRunNowOperator 的 repair_run 支援 (#38619)
在 更新 權限 中,新增 job_id 作為 路徑 參數 (#38962)
錯誤修正¶
修正 剩餘的 D401 檢查 (#37434)
在 job 重設期間更新 ACL (#38741)
從 更新 權限 端點移除 額外的 斜線 (#38918)
DatabricksRunNowOperator: 修正 latest_repair_id 中的 錯字 (#39050)
其他¶
refactor(databricks): 移除 多餘的 else 區塊 (#38397)
重新命名 'DatabricksSqlOperator''s 欄位' 名稱 以 符合 可模板化 欄位 驗證 (#38052)
6.2.0¶
功能¶
更新 DatabricksSqlOperator 以 使用 namedtuple (#37025)
其他¶
提升 aiohttp 最低 版本 以 避免 CVE-2024-23829 和 CVE-2024-23334 (#37110)
feat: 將 所有 類別、 函數、 方法 棄用項目 切換為 裝飾器 (#36876)
擺脫 pytest-httpx 作為 依賴項 (#37334)
6.1.0¶
功能¶
[FEAT] 為 databricks 新增 repair run 功能 (#36601)
錯誤修正¶
修正 databricks_sql hook 查詢 在 return_tuple 的 空 結果上失敗 (#36827)
將 欄位名稱重新命名為 有效的 namedtuple 屬性 + 確保 Row.fields 作為 tuple 擷取 (#36949)
在 deferrable 模式下 執行 DatabricksSubmitRunOperator & DatabricksSubmitRunOperator 之前檢查 狀態 (#36862)
6.0.0¶
注意
此供應商版本僅適用於 Airflow 2.6+,如 Apache Airflow 供應商支援政策 中所述。
重大變更¶
在 DBApi 衍生類別中傳回 通用 資料 結構 (#36205)
錯誤修正¶
修正: 在 ODBCHook 和 Databricks SQL Hook 中實作 對 'fetchone()' 的支援 (#36161)
其他¶
將 providers 中的 最低 Airflow 版本 提升 至 Airflow 2.6.0 (#36017)
修正 DatabricksSubmitRunOperator 中的 錯字 (#36248)
透過 Ruff 在 docstrings 中新增 程式碼 片段 格式設定 (#36262)
5.0.1 (已撤回)¶
警告
此版本已撤回,原因:provider DBApiHook 輸出 傳回 損壞的 輸出。
其他¶
透過 新的 'make_serializable' 方法,使 pyodbc.Row 和 databricks.Row 可進行 JSON 序列化 (#32319)
5.0.0¶
重大變更¶
在 list_jobs
中,offset
參數已被棄用,改為使用 page_token
進行更快速的分頁,類似於 Databricks API。
從 'DatabricksHook' 中的 'list_jobs' 函數移除 基於 offset 的 分頁 (#34926)
4.6.0¶
注意
此供應商版本僅適用於 Airflow 2.5+,如 Apache Airflow 供應商支援政策 中所述。
功能¶
新增 'DatabricksHook' ClusterState (#34643)
錯誤修正¶
在 'DatabricksSqlSensor' 中遵循 'soft_fail' 參數 (#34544)
執行 DatabricksPartitionSensor 時,遵循 'soft_fail' 引數 (#34517)
解碼 f-string 中的 回應 (#34518)
其他¶
提升 providers 的 最低 airflow 版本 (#34728)
在 databricks hook 中,針對 aiohttp 會話使用 aiohttp.BasicAuth 而非 HTTPBasicAuth (#34590)
將 'DatabricksHook' 中的 'list_jobs' 函數更新為 基於 token 的 分頁 (#33472)
4.5.0¶
功能¶
在 部署 … 之後,將 "QUEUED" 新增至 RUN_LIFE_CYCLE_STATES (#33886)
允許 DatabricksSubmitRunOperator 接受 pipeline_task 的 pipeline 名稱 (#32903)
其他¶
在 Airflow providers 中以解包取代 序列 串連 (#33933)
透過將 Airflow providers 中的 部分模組 匯入 類型檢查 區塊,改進模組匯入 (#33754)
在 providers 中使用 常值 dict 而非呼叫 dict() (#33761)
在 Airflow providers 中使用 f-string 而非 %(…)s (#33752)
4.4.0¶
注意
此版本排除 databricks-sql-connector 版本 2.9.0,原因是它未正確宣告 urllib3 的錯誤,如需更多資訊,請參閱 https://github.com/databricks/databricks-sql-python/issues/190
功能¶
為 Databricks 新增 服務主體 OAuth。 (#33005)
其他¶
更新 databricks.py 中的 文件 - 我們現在使用 2.1 (#32340)
不要 建立 我們不需要的 列表 (#33519)
重構: 改進 重複項的 偵測 和 列表 排序 (#33675)
簡化 其他 providers 中 len() 的 條件 (#33569)
重構: 簡化 較小 providers 中的 程式碼 (#33234)
4.3.2¶
錯誤修正¶
fix(providers/databricks): 從 即將棄用的 DatabricksRunNowDeferrableOperator 中移除 execute 方法 (#32806)
其他¶
為 'DatabricksRunNowOperator' 新增 遺失的 execute_complete 方法 (#32689)
為 DbApiHook.run 方法新增 更精確的 類型標註 (#31846)
4.3.1¶
錯誤修正¶
修改 'DatabricksSqlOperator' 的 'template_fields' 以支援 父類別 欄位 (#32253)
其他¶
新增 default_deferrable 組態 (#31712)
4.3.0¶
注意
此版本已停止支援 Python 3.7
功能¶
在 迴圈中產生 event 時,新增 return 以停止 執行 (#31985)
錯誤修正¶
修正 類型 標註 (#31888)
修正 Databricks SQL 運算子 序列化 (#31780)
再次使 Databricks run 相關的 多查詢 字串 在 一個 session 中執行 (#31898) (#31899)
其他¶
移除 triggers 類別中 yield from 之後的 return 陳述式 (#31703)
移除 Python 3.7 支援 (#30963)
4.2.0¶
注意
此供應商版本僅適用於 Airflow 2.4+,如Apache Airflow 供應商支援政策中所述。
功能¶
在 SQL 運算子中新增 條件式 輸出 處理 (#31136)
新增 取消 所有 執行 功能至 Databricks Hook (#31038)
在 databrics 非同步 運算子中新增 retry 參數 (#30744)
新增 修復 任務 功能至 databricks Hook (#30786)
新增 'DatabricksPartitionSensor' (#30980)
其他¶
提升 供應商中 最低 Airflow 版本 (#30917)
棄用 databricks 非同步 運算子 (#30761)
4.0.0¶
重大變更¶
DatabricksSqlHook
現在遵循與所有其他 DBApiHook
實作相同的語意,並在其 run
方法中傳回相同的回應類型。先前(供應商的 4.* 版本之前),Hook 傳回 (“游標描述”, “結果”) 的 Tuple,這與僅傳回 “結果” 的其他 DBApiHook 不相容。在此變更之後(並依賴 common.sql >= 1.3.1),DatabricksSqlHook
現在僅傳回 “結果”。在 run
方法完成後,可以透過 hook 的 last_description
欄位檢索 description
。
這使得 DatabricksSqlHook
適用於通用 SQL 運算子和詳細的沿襲分析。
如果您有自訂 hook 或在您的 TaskFlow 程式碼或依賴此行為的自訂運算子中使用 Hook,則需要調整您的 DAG。
Databricks DatabricksSQLOperator
也更加標準,並且衍生自通用的 SQLExecuteQueryOperator
,並在使用 SQL 查詢時使用更一致的方法來處理輸出。然而,在這種情況下,execute
方法傳回的結果沒有改變(它仍然傳回 (“description”, “results”) 的 Tuple,並且這個 Tuple 被推送到 XCom,因此您的 DAG 依賴此行為應該可以繼續運作而無需任何更改。
修正 Databricks SQL 運算子中 在 重構時 引入的 錯誤 (#27854)
提升 common.sql 供應商 至 1.3.1 (#27888)
錯誤修正¶
修正 DatabricksSQLOperator 中的 範本化 欄位 和 do_xcom_push (#27868)
最終 修正 SQL Hook 和 運算子的 行為 (#27912)
3.4.0 (已撤回)¶
警告
此版本已撤回,原因:DatabricsksSQLOperator 中存在 錯誤
注意
此供應商版本僅適用於 Airflow 2.3+,如Apache Airflow 供應商支援政策中所述。
其他¶
將 所有 供應商的 最低 airflow 版本 移至 2.3.0 (#27196)
將 urlparse 替換為 urlsplit (#27389)
功能¶
新增 SQLExecuteQueryOperator (#25717)
使用 新的 任務 搜尋 API 依 名稱 觸發 Databricks 任務 (#27446)
3.3.0¶
功能¶
DatabricksSubmitRunOperator dbt 任務 支援 (#25623)
其他¶
為 common-sql 新增 common-sql 下限 (#25789)
移除 供應商內 重複的 連線類型 (#26628)
錯誤修正¶
Databricks: 修正 User-Agent 字串中的 供應商名稱 (#25873)
3.2.0¶
功能¶
Databricks: 更新 user-agent 字串 (#25578)
Databricks 運算子的 更多 改進 (#25260)
改進 Databricks 供應商的 遙測 (#25115)
統一 DbApiHook.run() 方法與 覆寫它的 方法 (#23971)
錯誤修正¶
Databricks: 修正 test_connection 實作 (#25114)
不要 在 deep_string_coerce 函式中 將 布林值 轉換為 字串 (#25394)
正確地 處理 失敗任務的 輸出 (#25427)
Databricks: 修正 Airflow 2.2.x 的 供應商 (#25674)
3.1.0¶
功能¶
新增 databricks_conn_id 作為 範本化 欄位 (#24945)
新增 'test_connection' 方法至 Databricks Hook (#24617)
將 所有 SQL 類別 移動到 common-sql 供應商 (#24836)
錯誤修正¶
更新 供應商以 使用 functools compat 用於 ''cached_property'' (#24582)
3.0.0¶
重大變更¶
注意
此供應商版本僅適用於 Airflow 2.2+,如Apache Airflow 供應商支援政策中所述。
功能¶
新增 可延遲的 Databricks 運算子 (#19736)
新增 git_source 至 DatabricksSubmitRunOperator (#23620)
錯誤修正¶
修正: DatabricksSubmitRunOperator 和 DatabricksRunNowOperator 無法 將 .json 定義為 template_ext (#23622) (#23641)
修正 DatabricksSqlHook 中 sql 為 空 列表時的 UnboundLocalError (#23815)
2.7.0¶
功能¶
更新 至 DBSQL 連接器的 已發布 版本
DatabricksSqlOperator - 切換至 databricks-sql-connector 2.x
進一步 改進 Databricks 任務 運算子 (#23199)
2.6.0¶
功能¶
更多 Databricks Repos 的 運算子 (#22422)
新增 Databricks 任務執行的 連結 (#22541)
Databricks SQL 運算子 現在 與 Python 3.10 相容 (#22886)
錯誤修正¶
Databricks: 正確處理 HTTP 例外 (#22885)
其他¶
重構 'DatabricksJobRunLink' 以 不 建立 臨時的 TaskInstances (#22571)
2.5.0¶
功能¶
用於 更新 Databricks Repos 的 運算子 (#22278)
錯誤修正¶
修正 錯誤地 為 所有 供應商 新增的 install_requires (#22382)
2.4.0¶
功能¶
新增 選項至 DatabricksCopyIntoOperator (#22076)
Databricks hook - 在 HTTP 狀態 429 時也 重試 (#21852)
其他¶
跳過 在 Python 3.10 上執行的 Databricks 的一些 測試 (#22221)
2.3.0¶
功能¶
新增-顯示-執行階段-錯誤-功能-至-DatabricksSubmitRunOperator (#21709)
Databricks: 新增 依 名稱 觸發 任務的 支援 (#21663)
新增 template_ext = ('.json') 至 databricks 運算子 #18925 (#21530)
Databricks SQL 運算子 (#21363)
錯誤修正¶
修正 2022 年 1 月(延遲)供應商版本的 變更日誌 (#21439)
其他¶
支援 Python 3.10
更新 Databricks 文件以 符合 正確的 任務 2.1 API 和 連結 (#21494)
2.2.0¶
功能¶
為 Databricks 運算子 新增 'wait_for_termination' 引數 (#20536)
在 ''DatabricksHook'' 中 更新 連線 物件為 ''cached_property'' (#20526)
在 'DatabricksHook' 中 移除 'host' 作為 實例 屬性 (#20540)
Databricks: 修正 受管理身分 驗證 (#20550)
2.1.0¶
功能¶
Databricks: 新增 更多 方法以 表示 執行 狀態 資訊 (#19723)
Databricks - 允許 在 其他 Azure 雲端上進行 Azure SP 驗證 (#19722)
Databricks: 允許 在 密碼 欄位中 指定 PAT (#19585)
Databricks 任務 2.1 (#19544)
將 Databricks API 從 2.0 更新到 2.1 (#19412)
Databricks 供應商中的 使用 AAD 權杖進行 驗證 (#19335)
更新 Databricks 運算子以 符合 最新版本的 API 2.0 (#19443)
從 DatabricksHook.__init__() 中 移除 db 呼叫 (#20180)
錯誤修正¶
修正 字串 串連 (#19099)
Databricks hook: 修正 到期時間 檢查 (#20036)
2.0.0¶
重大變更¶
自動套用 apply_default 裝飾器 (#15667)
警告
由於移除了 apply_default 裝飾器,此供應商版本需要 Airflow 2.1.0+。如果您的 Airflow 版本 < 2.1.0,並且您想要安裝此供應商版本,請先將 Airflow 升級到至少 2.1.0 版本。否則,您的 Airflow 套件版本將自動升級,您將必須手動執行 airflow upgrade db
以完成遷移。
1.0.1¶
更新了文件和 readme 檔案。
1.0.0¶
供應商的初始版本。