apache-airflow-providers-snowflake

更新日誌

6.0.0

注意

此供應商版本僅適用於 Airflow 2.9+,如 Apache Airflow 供應商支援政策 中所述。

重大變更

警告

所有已棄用的類別、參數和功能已從 snowflake 供應商套件中移除。以下是引入的重大變更

  • 移除已棄用的 SnowflakeOperator。請改用 SQLExecuteQueryOperator

  • 移除 Snowflake 中的供應商棄用 (#44756)

功能

  • snowflake 供應商啟用 client_store_temporary_credential (#44431)

  • 允許在 'providers.snowflake.hooks.SnowflakeHook' extra dict 中指定 'json_result_force_utf8_encoding' (#44264)

  • 使 Snowflake 連線的主機/埠可配置 (#44079)

其他

  • 將供應商中的最低 Airflow 版本提升至 Airflow 2.9.0 (#44956)

  • 更新多個供應商文件中的 DAG 範例連結 (#44034)

5.8.1

其他

  • DbApiHookPrestoHook TrinoHook 新增分號去除支援 (#41916)

  • python 運算子移至 Standard 供應商 (#42081)

5.8.0

功能

  • 新增 Snowpark 運算子和裝飾器 (#42457)

錯誤修正

  • 修復: SnowflakeSqlApiOperator 未解析 SQL 中的參數 (#42719)

  • 使 'private_key_content' 成為 Snowflake 連線中的敏感欄位 (#42649)

5.7.1

其他

  • 更新 snowflake 命名,以用於 openlineage 的帳戶名稱和定位器 (#41775)

5.7.0

注意

此供應商版本僅適用於 Airflow 2.8+,如 Apache Airflow 供應商支援政策 中所述。

錯誤修正

  • 修復: hook 參數傳遞給 SnowflakeSqlApiHook,並為 API 呼叫準備它們 (#41150)

其他

  • 將供應商中的最低 Airflow 版本提升至 Airflow 2.8.0 (#41396)

5.6.1

其他

  • openlineage:將 OpenLineage 供應商遷移至 V2 facets (#39530)

  • 清理剩餘的 getattr 連線 DbApiHook (#40665)

5.6.0

功能

  • 雜項: SnowflakeHook 中新增對 client_request_mfa_token 的參數支援 (#40394)

5.5.2

其他

  • 實作具有最低直接相依性解析的每個供應商測試 (#39946)

  • openlineage:在 sql parser 呼叫點周圍新增一些偵錯日誌記錄 (#40200)

  • 更新 Python 3.12 pandas 最低需求 (#40272)

  • 根據支援政策,將 Snowflake 用戶端驅動程式版本提升至最低 2.7.11 (#39886)

5.5.1

其他

  • 移除 Google Snowflake 供應商中的 'openlineage.common' 相依性。 (#39614)

  • 從文件字串中移除未使用的 'copy_into_postifx' 參數 (#39454)

  • 更快的 'airflow_version' 匯入 (#39552)

  • 簡化 'airflow_version' 匯入 (#39497)

5.5.0

注意

此供應商版本僅適用於 Airflow 2.7+,如 Apache Airflow 供應商支援政策 中所述。

錯誤修正

  • openlineage, snowflake:不要為 Snowflake 執行外部查詢 (#39113)

其他

  • 將供應商中的最低 Airflow 版本提升至 Airflow 2.7.0 (#39240)

5.4.0

功能

  • 功能: 更新 SnowflakeSqlApiHook 以支援 OAuth (#37922)

其他

  • 移除 snowflake hook 文件字串中對 execution_info 的參考 (#37804)

5.3.1

其他

  • 功能: 將所有類別、函式、方法棄用切換為裝飾器 (#36876)

5.3.0

功能

  • 功能: CopyFromExternalStageToSnowflakeOperator 新增 openlineage 支援 (#36535)

錯誤修正

  • 修復 warnings.warn 中的 stacklevel 問題至供應商 (#36831)

其他

  • 在可延遲模式下最佳化 'SnowflakeSqlApiOperator' 執行 (#36850)

5.2.1

錯誤修正

  • DBApi 衍生類別中傳回通用資料結構

  • 在子類別中遵循 BaseHook 連線欄位方法簽章 (#36086)

5.2.0

注意

此供應商版本僅適用於 Airflow 2.6+,如 Apache Airflow 供應商支援政策 中所述。

其他

  • 將供應商中的最低 Airflow 版本提升至 Airflow 2.6.0 (#36017)

5.1.2

錯誤修正

  • OpenLineage 整合嘗試在 SnowflakeHook 中使用不存在的方法 (#35752)

5.1.1

其他

  • 'create_filter_clauses' 中將 schema 篩選器設為大寫 (#35428)

  • 提升最低 'snowflake-connector-python' 版本 (#35440)

5.1.0

注意

此供應商版本僅適用於 Airflow 2.5+,如 Apache Airflow 供應商支援政策 中所述。

錯誤修正

  • 解碼 f-string 中的回應 (#34518)

其他

  • 提升供應商的最低 airflow 版本 (#34728)

  • 在供應商中使用 'airflow.exceptions.AirflowException' (#34511)

5.0.1

其他

  • 透過將某些模組匯入類型檢查區塊,改善 Airflow 供應商中的模組匯入 (#33754)

  • 在供應商中使用具有多個內容的單一陳述式,而不是巢狀陳述式 (#33768)

  • 在供應商中使用字面字典,而不是呼叫 dict() (#33761)

5.0.0

重大變更

警告

移除已棄用的 S3ToSnowflakeOperator,改用 CopyFromExternalStageToSnowflakeOperator。傳遞為 s3_keys 的參數需要變更為 files,行為應保持不變。

移除已棄用的 SnowflakeToSlackOperator,改用 Slack Provider 的 SqlToSlackOperator。傳遞為 schemaroledatabasewarehouse 的參數需要包含在 sql_hook_params 參數中,行為應保持不變。

  • 移除已棄用的 'S3ToSnowflake' 'SnowflakeToSlack' 運算子 (#33558)

錯誤修正

  • Snowflake 運算子上設定 snowflake_conn_id 以避免錯誤 (#33681)

4.4.2

其他

  • SQL 運算子中新增一個新參數以指定 conn id 欄位 (#30784)

4.4.1

錯誤修正

  • 修復 'SnowflakeValueCheckOperator' 的連線參數 (#32605)

4.4.0

功能

  • openlineage, snowflake:為 Snowflake 新增 OpenLineage 支援 (#31696)

其他

  • DbApiHook.run 方法新增更精確的類型標註 (#31846)

  • 將棄用資訊新增至供應商模組和類別文件字串 (#32536)

4.3.1

錯誤修正

  • 修復當傳遞無效的私鑰路徑至 Snowflake 時,導致 Airflow Webserver 崩潰的問題 (#32016)

4.3.0

功能

  • SnowflakeSqlApiOperator 新增可延遲切換 (#31596)

4.2.0

注意

此版本已停止支援 Python 3.7

功能

  • 新增 SnowflakeSqlApiOperator 運算子 (#30698)

其他

  • SnowflakeSqlApiOperator - 變更基底類別 (#31751)

  • sql_api_generate_jwt 移出 hooks 資料夾 (#31586)

4.1.0

注意

此供應商版本僅適用於 Airflow 2.4+,如 Apache Airflow 供應商支援政策 中所述。

其他

  • 提升供應商中的最低 Airflow 版本 (#30917)

4.0.5

其他

  • 更新 snowflake 供應商 4.0 重大變更的文件 (#30020)

4.0.4

錯誤修正

  • 修復 files 參數缺少括號的問題 (#29437)

4.0.3

錯誤修正

  • 為父類別運算子提供遺失的連線 (#29211)

  • Snowflake 供應商 - UI 隱藏主機 (#29208)

4.0.2

重大變更

注意

此供應商版本僅適用於 Airflow 2.3+,如 Apache Airflow 供應商支援政策 中所述。

SnowflakeHook 現在遵循與所有其他 DBApiHook 實作相同的語意,並在其 run 方法中傳回相同類型的回應。先前(供應商的 4.* 版本之前),Hook 傳回字典 { "column": "value" ... },這與僅傳回序列序列的其他 DBApiHook 不相容。在此變更之後(以及相依於 common.sql >= 1.3.1),SnowflakeHook 現在預設傳回與 python DbApi 相容的「結果」。

描述(即傳回的欄位的名稱和類型等)可以在 run 方法完成後,透過 hook 的 descriptionslast_description 欄位擷取。

這使得 DatabricksSqlHook 適用於通用 SQL 運算子和詳細的沿襲分析。

如果您有自訂 hook 或在 TaskFlow 程式碼或依賴此行為的自訂運算子中使用 Hook,則需要調整您的 DAG,或者您可以透過將 return_dictionaries=True 傳遞給 hook 的 run 方法,將 SnowflakeHook 切換回傳回字典。

SnowflakeOperator 也更加標準,並且衍生自通用的 SQLExecuteQueryOperator,並在使用 SQL 查詢執行時,使用更一致的方法來處理輸出。然而,在這種情況下,execute 方法傳回的結果保持不變(它仍然傳回字典而不是序列,並且這些字典會被推送到 XCom,因此您的 DAG 依賴此行為應繼續運作,而無需任何變更。

更新:4.0 版本中運算子未提及的重大變更之一是預設將 autocommit 切換為 False。雖然對使用者不是很友善,但這是與其他 SQL 運算子統一介面的副作用,並且我們已發布給使用者,因此再次切換回會造成更多混淆。如果您想繼續使用 SnowflakeOperator 並期望自動提交運作,則應手動新增 autocommit=True,但更好的是,您應該切換到 SQLExecuteQueryOperator

在 SnowflakeHook 中,如果連線額外字典中同時存在 extra__snowflake__foofoo,則會使用帶前綴的版本;現在,將優先使用不帶前綴的版本。

4.0.0 和 4.0.1 版本已損壞並被撤回,因此 4.0.2 是應使用的 4.* 系列中的第一個變更。

  • 修復 exasol snowflake DB hook run() 方法結果的包裝 (#27997)

  • 使 Snowflake Hook 符合 DBApi 的語意 (#28006)

4.0.1 (已撤回)

警告

此版本已撤回,因為它在與 common.sql 供應商互動時存在問題。請安裝之後發布的版本。

錯誤修正

  • 修復重構時在 Databricks SQL 運算子中引入的錯誤 (#27854)

  • common.sql 供應商提升至 1.3.1 (#27888)

  • 最終修復 SQL Hook 和運算子的行為 (#27912)

4.0.0 (已撤回)

警告

此版本已撤回,因為它在與 common.sql 供應商互動時存在問題。請安裝之後發布的版本。

  • 更新 snowflake hook 以不使用額外前綴 (#26764)

其他

  • 將所有供應商的最低 airflow 版本移至 2.3.0 (#27196)

功能

  • 新增 SQLExecuteQueryOperator (#25717)

錯誤修正

  • SQLCheckOperator.execute 中使用未使用的 SQLCheckOperator.parameters (#27599)

3.3.0

功能

  • SnowflakeOperator 中新增自訂處理常式參數 (#25983)

錯誤修正

  • 修復 'S3ToSnowflakeOperator' 的錯誤棄用警告 (#26047)

3.2.0

功能

  • 將所有「舊」 SQL 運算子移至 common.sql 供應商 (#25350)

  • DbApiHook.run() 方法與覆寫它的方法統一 (#23971)

3.1.0

功能

  • 新增通用 'SqlToSlackOperator' (#24663)

  • 將所有 SQL 類別移至 common-sql 供應商 (#24836)

  • S3ToSnowflakeOperator 中的 Pattern 參數 (#24571)

錯誤修正

  • S3ToSnowflakeOperator:逸出 s3_keys 中的單引號 (#24607)

3.0.0

重大變更

注意

此 provider 版本僅適用於 Airflow 2.2+,如 Apache Airflow providers 支援政策中所述。

Bug Fixes

  • Fix error when SnowflakeHook take empty list in 'sql' param (#23767)

2.7.0

Features

  • Allow multiline text in private key field for Snowflake (#23066)

2.6.0

Features

  • Add support for private key in connection for Snowflake (#22266)

Bug Fixes

  • Fix mistakenly added install_requires for all providers (#22382)

2.5.2

Misc

  • Remove Snowflake limits (#22181)

2.5.1

Misc

  • Support for Python 3.10

2.5.0

Features

  • Add more SQL template fields renderers (#21237)

Bug Fixes

  • Fix #21096: Support boolean in extra__snowflake__insecure_mode (#21155)

2.4.0

Features

  • Support insecure mode in SnowflakeHook (#20106)

  • Remove unused code in SnowflakeHook (#20107)

  • Improvements for 'SnowflakeHook.get_sqlalchemy_engine'  (#20509)

  • Exclude snowflake-sqlalchemy v1.2.5 (#20245)

  • Limit Snowflake connector to <2.7.2 (#20395)

2.3.1

Bug Fixes

  • Remove duplicate get_connection in SnowflakeHook (#19543)

2.3.0

Features

  • Add test_connection method for Snowflake Hook (#19041)

  • Add region to Snowflake URI. (#18650)

2.2.0

Features

  • Add Snowflake operators based on SQL Checks  (#17741)

2.1.1

Misc

  • Optimise connection importing for Airflow 2.2.0

2.1.0

Features

  • Adding: Snowflake Role in snowflake provider hook (#16735)

2.0.0

Breaking changes

  • Auto-apply apply_default decorator (#15667)

警告

由於移除 apply_default 裝飾器,此 provider 版本需要 Airflow 2.1.0+。如果您的 Airflow 版本低於 2.1.0,並且您想要安裝此 provider 版本,請先將 Airflow 升級到至少 2.1.0 版本。否則您的 Airflow 套件版本將會自動升級,並且您將必須手動執行 airflow upgrade db 以完成移轉。

Features

  • Add 'template_fields' to 'S3ToSnowflake' operator (#15926)

  • Allow S3ToSnowflakeOperator to omit schema (#15817)

  • Added ability for Snowflake to attribute usage to Airflow by adding an application parameter (#16420)

Bug Fixes

  • fix: restore parameters support when sql passed to SnowflakeHook as str (#16102)

1.3.0

Features

  • Expose snowflake query_id in snowflake hook and operator (#15533)

1.2.0

Features

  • Add dynamic fields to snowflake connection (#14724)

1.1.1

Bug fixes

  • Corrections in docs and tools after releasing provider RCs (#14082)

  • Prepare to release the next wave of providers: (#14487)

1.1.0

已更新文件和 readme 檔案。

Features

  • Fix S3ToSnowflakeOperator to support uploading all files in the specified stage (#12505)

  • Add connection arguments in S3ToSnowflakeOperator (#12564)

1.0.0 (已撤回)

警告

此版本已被撤回,原因為:Snowflake breaks openssl when used

Provider 的初始版本。

此條目是否有幫助?