apache-airflow-providers-snowflake

更新日志

6.0.0

注意

此提供程序版本仅适用于 Airflow 2.9+,如 Apache Airflow 提供程序支持策略 中所述。

重大更改

警告

所有已弃用的类、参数和功能已从 snowflake 提供程序包中移除。引入了以下重大更改

  • 移除了已弃用的 SnowflakeOperator。请改用 SQLExecuteQueryOperator

  • 移除 Snowflake 中的 提供程序 弃用 (#44756)

特性

  • snowflake 提供程序 启用 client_store_temporary_credential (#44431)

  • 允许 'json_result_force_utf8_encoding' 'providers.snowflake.hooks.SnowflakeHook' extra 字典中指定 (#44264)

  • 使 Snowflake 连接的 host/port 可配置 (#44079)

其他

  • 提供程序中 最低 Airflow 版本 提升至 Airflow 2.9.0 (#44956)

  • 更新 多个 提供程序 文档中 DAG 示例 链接 (#44034)

5.8.1

其他

  • DbApiHook, PrestoHook TrinoHook 添加 分号去除的 支持 (#41916)

  • python 操作符 移动到 标准 提供程序 (#42081)

5.8.0

特性

  • 添加 Snowpark 操作符 装饰器 (#42457)

Bug 修复

  • 修复: SnowflakeSqlApiOperator 无法 解析 SQL 中的 参数 (#42719)

  • 使 'private_key_content' 成为 Snowflake 连接中 敏感 字段 (#42649)

5.7.1

其他

  • 更新 openlineage snowflake 帐户名称 定位器 命名 (#41775)

5.7.0

注意

此提供程序版本仅适用于 Airflow 2.8+,如 Apache Airflow 提供程序支持策略 中所述。

Bug 修复

  • 修复: hook 参数 传递给 SnowflakeSqlApiHook API 调用 准备 它们 (#41150)

其他

  • 提供程序中 最低 Airflow 版本 提升至 Airflow 2.8.0 (#41396)

5.6.1

其他

  • openlineage: OpenLineage 提供程序 迁移到 V2 方面。 (#39530)

  • 清理 剩余的 getattr 连接 DbApiHook (#40665)

5.6.0

特性

  • chore: SnowflakeHook 中的 client_request_mfa_token 添加 参数 支持 (#40394)

5.5.2

其他

  • 使用 最低直接 依赖项 解析 实现 每个提供程序的 测试 (#39946)

  • openlineage: sql 解析器 调用站点 周围 添加 一些 调试 日志记录 (#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 提供程序支持策略 中所述。

Bug 修复

  • openlineage, snowflake: 不为 Snowflake 运行 外部 查询 (#39113)

其他

  • 提供程序中 最低 Airflow 版本 提升至 Airflow 2.7.0 (#39240)

5.4.0

特性

  • feat: 更新 SnowflakeSqlApiHook 以支持 OAuth (#37922)

其他

  • 删除 snowflake hook 文档字符串中 execution_info 引用 (#37804)

5.3.1

其他

  • feat: 所有 类、 函数、 方法 弃用 切换到 装饰器 (#36876)

5.3.0

特性

  • feat: CopyFromExternalStageToSnowflakeOperator 添加 openlineage 支持 (#36535)

Bug 修复

  • 修复 providers warnings.warn 中的 stacklevel (#36831)

其他

  • 优化 'SnowflakeSqlApiOperator' 可延迟模式下 执行 (#36850)

5.2.1

Bug 修复

  • DBApi 派生 类中 返回 通用 数据 结构

  • 子类中 遵循 BaseHook 连接 字段 方法 签名 (#36086)

5.2.0

注意

此提供程序版本仅适用于 Airflow 2.6+,如 Apache Airflow 提供程序支持策略 中所述。

其他

  • 提供程序中 最低 Airflow 版本 提升至 Airflow 2.6.0 (#36017)

5.1.2

Bug 修复

  • OpenLineage 集成 尝试 SnowflakeHook 中使用 不存在的 方法 (#35752)

5.1.1

其他

  • 'create_filter_clauses' 中将 schema 过滤器 设置为 大写 (#35428)

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

5.1.0

注意

Apache Airflow 提供程序支持策略 中所述,此提供程序版本仅适用于 Airflow 2.5+。

Bug 修复

  • f-string 中解码 响应 (#34518)

其他

  • 提升 提供程序的 最低 airflow 版本 (#34728)

  • providers 中使用 'airflow.exceptions.AirflowException' (#34511)

5.0.1

其他

  • 通过将 一些 模块放入 类型检查 中,改进 Airflow 提供程序中的 模块导入 (#33754)

  • providers 中使用 包含多个上下文的 单个语句,而不是嵌套语句 (#33768)

  • providers 中使用 字面量字典,而不是调用 dict() (#33761)

5.0.0

重大更改

警告

删除已弃用的 S3ToSnowflakeOperator,改为使用 CopyFromExternalStageToSnowflakeOperator。作为 s3_keys 传递的参数需要更改为 files,行为应保持不变。

删除已弃用的 SnowflakeToSlackOperator,改为使用 Slack 提供程序中的 SqlToSlackOperator。作为 schemaroledatabasewarehouse 传递的参数需要包含在 sql_hook_params 参数中,行为应保持不变。

  • 删除 已弃用的 'S3ToSnowflake' 'SnowflakeToSlack' 操作符 (#33558)

Bug 修复

  • Snowflake 操作符上设置 snowflake_conn_id 以避免错误 (#33681)

4.4.2

其他

  • SQL 操作符添加 一个新参数,以指定 conn id 字段 (#30784)

4.4.1

Bug 修复

  • 修复 'SnowflakeValueCheckOperator' 的连接参数 (#32605)

4.4.0

功能

  • openlineage, snowflake: Snowflake 添加 OpenLineage 支持 (#31696)

其他

  • DbApiHook.run 方法添加更准确的类型提示 (#31846)

  • 向提供程序模块和类的文档字符串添加弃用信息 (#32536)

4.3.1

Bug 修复

  • 修复将无效私钥路径传递给 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

注意

Apache Airflow 提供程序支持策略 中所述,此提供程序版本仅适用于 Airflow 2.4+。

其他

  • 提升 提供程序中的 最低 Airflow 版本 (#30917)

4.0.5

其他

  • 更新 snowflake 提供程序 4.0 重大更改的文档 (#30020)

4.0.4

Bug 修复

  • 修复 files 参数缺少括号的问题 (#29437)

4.0.3

Bug 修复

  • 向父类操作符提供缺少的连接 (#29211)

  • Snowflake 提供程序 - UI 隐藏主机 (#29208)

4.0.2

重大更改

注意

Apache Airflow 提供程序支持策略 中所述,此提供程序版本仅适用于 Airflow 2.3+。

SnowflakeHook 现在符合所有其他 DBApiHook 实现的相同语义,并在其 run 方法中返回相同类型的响应。之前(提供程序的 4.* 版本之前),Hook 返回 { "column": "value" ... } 的字典,这与其他返回序列序列的 DBApiHook 不兼容。在此更改(以及对 common.sql >= 1.3.1 的依赖)之后,SnowflakeHook 现在默认返回与 python DbApi 兼容的“结果”。

可以在 run 方法完成后,通过 hook 的 descriptionslast_description 字段检索 description (即,除其他外,返回的列的名称和类型)。

这使得 DatabricksSqlHook 适用于通用 SQL 操作符和详细的血缘分析。

如果你的 TaskFlow 代码或自定义操作符中使用了自定义钩子或 Hook,并且依赖于此行为,你需要调整你的 DAG,或者可以通过将 return_dictionaries=True 传递给钩子的 run 方法,将 SnowflakeHook 恢复为返回字典。

SnowflakeOperator 也更加标准化,它继承自通用的 SQLExecuteQueryOperator,并在运行 SQL 查询时使用更一致的方法来处理输出。然而,在这种情况下,execute 方法返回的结果没有改变(它仍然返回字典而不是序列,并且这些字典会被推送到 XCom,因此依赖此行为的 DAG 应该可以继续工作而无需任何更改)。

更新:4.0 版本中,操作符一个未提及的重大更改是将默认的自动提交 (autocommit) 设置为 False。虽然这对用户不太友好,但这是与其他 SQL 操作符统一接口的副作用,并且我们已将其发布给用户,因此再次将其切换回原状会导致更多混淆。如果你想继续使用 SnowflakeOperator 并期望自动提交工作,你应该手动添加 autocommit=True,但更好的做法是切换到 SQLExecuteQueryOperator。

在 SnowflakeHook 中,如果连接的 extra 字典中同时存在 extra__snowflake__foofoo,则会使用带前缀的版本;现在,将优先使用不带前缀的版本。

4.0.04.0.1 版本已损坏并被撤回,因此 4.0.2 是 4.* 系列中第一个应该使用的版本。

  • 修复 exasol snowflake 数据库 钩子的 run() 方法 结果 包装 (#27997)

  • 使 Snowflake Hook 符合 DBApi 语义 (#28006)

4.0.1(已撤回)

警告

此版本已撤回,因为它在与 common.sql provider 交互时存在问题。请安装之后发布的版本。

Bug 修复

  • 修复 重构时引入的 Databricks SQL 操作符中的 错误 (#27854)

  • common.sql provider 升级到 1.3.1 (#27888)

  • 最终 修复 SQL 钩子和操作符的 行为 (#27912)

4.0.0(已撤回)

警告

此版本已撤回,因为它在与 common.sql provider 交互时存在问题。请安装之后发布的版本。

  • 更新 snowflake 钩子 不使用 额外的 前缀 (#26764)

其他

  • 所有 provider 最低 Airflow 版本 移至 2.3.0 (#27196)

功能

  • 添加 SQLExecuteQueryOperator (#25717)

Bug 修复

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

3.3.0

功能

  • SnowflakeOperator 中添加 自定义 处理程序 参数 (#25983)

Bug 修复

  • 修复 'S3ToSnowflakeOperator' 错误 弃用警告 (#26047)

3.2.0

功能

  • 将所有“旧” SQL 操作符 移至 common.sql providers (#25350)

  • DbApiHook.run() 方法 与其覆盖的 方法 统一 (#23971)

3.1.0

功能

  • 添加 通用 'SqlToSlackOperator' (#24663)

  • 所有 SQL 移至 common-sql provider (#24836)

  • S3ToSnowflakeOperator 中的 模式 参数 (#24571)

Bug 修复

  • S3ToSnowflakeOperator: s3_keys 中转义 单引号 (#24607)

3.0.0

重大更改

注意

Apache Airflow providers 支持策略 中所述,此 provider 版本仅适用于 Airflow 2.2+。

Bug 修复

  • 修复 SnowflakeHook 'sql' 参数中接受空列表时的 错误 (#23767)

2.7.0

功能

  • 允许 Snowflake 私钥字段中包含多行文本 (#23066)

2.6.0

功能

  • Snowflake 连接添加 私钥支持 (#22266)

Bug 修复

  • 修复 错误添加的 所有 providers install_requires (#22382)

2.5.2

其他

  • 删除 Snowflake 限制 (#22181)

2.5.1

其他

  • 支持 Python 3.10

2.5.0

功能

  • 添加更多 SQL 模板 字段渲染器 (#21237)

Bug 修复

  • 修复 #21096: 支持 extra__snowflake__insecure_mode 中的布尔值 (#21155)

2.4.0

功能

  • SnowflakeHook 中支持 不安全模式 (#20106)

  • 删除 SnowflakeHook 中未使用的代码 (#20107)

  • 'SnowflakeHook.get_sqlalchemy_engine' 的改进 (#20509)

  • 排除 snowflake-sqlalchemy v1.2.5 (#20245)

  • Snowflake 连接器 限制为 <2.7.2 (#20395)

2.3.1

Bug 修复

  • 删除 SnowflakeHook 中重复的 get_connection (#19543)

2.3.0

功能

  • Snowflake Hook 添加 test_connection 方法 (#19041)

  • region 添加到 Snowflake URI。 (#18650)

2.2.0

功能

  • 添加 基于 SQL 检查的 Snowflake 操作符 (#17741)

2.1.1

其他

  • 优化 Airflow 2.2.0 连接导入

2.1.0

功能

  • 添加: snowflake provider hook 中的 Snowflake 角色 (#16735)

2.0.0

重大更改

  • 自动应用 apply_default 装饰器 (#15667)

警告

由于删除了 apply_default 装饰器,此版本的 provider 需要 Airflow 2.1.0+。如果你的 Airflow 版本低于 2.1.0,并且你想安装此 provider 版本,请首先将 Airflow 升级到至少 2.1.0 版本。否则,你的 Airflow 包版本将自动升级,你必须手动运行 airflow upgrade db 以完成迁移。

功能

  • 'S3ToSnowflake' 操作符添加 'template_fields' (#15926)

  • 允许 S3ToSnowflakeOperator 省略 schema (#15817)

  • 添加了 Snowflake 通过添加 一个 应用程序参数 使用情况 归因于 Airflow 的功能 (#16420)

Bug 修复

  • 修复: sql 作为 str 传递给 SnowflakeHook 时,恢复参数支持 (#16102)

1.3.0

特性

  • snowflake hook 操作符中公开 snowflake query_id (#15533)

1.2.0

特性

  • snowflake 连接添加动态字段 (#14724)

1.1.1

Bug 修复

  • 在发布提供程序 RCs 后,对文档和工具进行更正 (#14082)

  • 准备发布下一波提供程序: (#14487)

1.1.0

更新了文档和自述文件。

特性

  • 修复 S3ToSnowflakeOperator 以支持上传指定阶段中的所有文件 (#12505)

  • S3ToSnowflakeOperator 中添加连接参数 (#12564)

1.0.0 (已撤回)

警告

此版本已因以下原因被撤回Snowflake 在使用时会破坏 openssl

提供程序的初始版本。

此条目是否有帮助?