2022 年 Snowflake Connector for Spark 版本说明

本文包含 Snowflake Connector for Spark 的版本说明,包括以下内容(如果适用):

  • 行为变更

  • 新功能

  • 面向客户的错误修复

Snowflake 对 Snowflake Connector for Spark 更新使用语义版本控制。

有关文档,请参阅 Snowflake Connector for Spark

版本 2.11.1(2022 年 12 月 13 日)

新功能

  • 添加了针对 AWS VPCE 部署的支持,通过添加 S3_STAGE_VPCE_DNS_NAME 配置参数,以便在会话级别指定 VPCE DNS 名称。

  • 添加了新的配置选项,如果查询返回 Decimal(<any_precision>, 0),支持 Spark Connector 返回 Long 值,而不是 BigDecimal 值。WARNING:如果值大于 Long 的最大值,将会引发错误。

  • 添加了新选项 proxy_protocol,用于在 AWS 部署时指定代理协议(http 或 https)。(该选项对 Azure 和 GCP 部署无效。)

  • 添加了以下支持:在行计数大于整数最大值的表中对行进行计数。

  • 更新了连接器以使用 Snowflake JDBC 驱动程序 3.13.24。

错误修复

  • 更新了连接器以关闭 JDBC 连接,从而避免连接泄漏。

  • 修复了在发送遥测消息时出现的 NullPointerException 问题。

版本 2.11.0(2022 年 9 月 2 日)

兼容的 JDBC 驱动程序版本:3.13.22

  • 添加了对 Spark 3.3 的支持并修复了一些错误:

    • 升级了测试所依赖的 PostgreSQL JDBC 驱动程序的版本,以避免安全漏洞 CVE-2022-31197 (https://github.com/advisories/GHSA-r38f-c4h4-hqq2)。

    • 更新了连接器,以使用 Snowflake JDBC 驱动程序 3.13.22 和 Snowflake Ingest SDK 0.10.8。

备注

  • 从版本 2.11.0 开始,Snowflake Connector for Spark 支持 Spark 3.1、3.2 和 3.3。Snowflake Connector for Spark 的版本 2.11.0 不支持 Spark 3.0。请注意,连接器的之前版本继续支持 Spark 3.0。

  • 对于 Snowflake GCP 账户,Snowflake JDBC 驱动程序版本 3.13.16 到 3.13.21 不适用于 Spark Connector。

版本 2.10.1(2022 年 8 月 15 日)

兼容的 JDBC 驱动程序版本:3.13.14

错误修复

  • 移除了库的不必要依赖项,以避免安全漏洞 CVE-2020-8908 (https://github.com/advisories/GHSA-5mg8-w23w-74h3) 和 CVE-2018-10237 (https://github.com/advisories/GHSA-mvr2-9pj6-7w5j)。

  • 添加了以下支持:从 Snowflake 读取数据时,使用 JDBC 数据类型 TIMESTAMP_WITH_TIMEZONE

  • 更改了以下逻辑:在将 DataFrame 保存到 Snowflake 之前,检查表是否存在。

    • 连接器现在重复使用现有连接(而不是创建新连接),以避免令牌过期的潜在问题。

    • 如果表名称不是完全限定(即不包含架构名称),连接器现在会在 sfSchema 指定的架构(而不是当前在会话中使用的架构)下面检查表。

      备注

      如果您需要将 DataFrame 保存到 sfSchema 之外的某个架构中的表,将该架构指定为表的完全限定名称的一部分,而不是执行 USE SCHEMA 以更改当前架构。

  • 通过以下方式改进了性能:在将包含 ArrayTypeMapTypeStructType 列的 DataFrame 写入 Snowflake 时,避免 COPY INTO TABLE 命令中不必要的 parse_json() 调用。

  • Utils 类添加了 getLastSelectQueryIdgetLastCopyLoadQueryId 方法。这些方法(分别)返回从 Snowflake 读取数据的上一个查询的查询 ID,以及执行的上一个 COPY INTO TABLE 语句。

版本 2.10.0(2022 年 2 月 17 日)

兼容的 JDBC 驱动程序版本:3.13.14

行为变更

  • 添加了对 Spark 3.2 版的支持。从此版本开始,Snowflake Connector for Spark 仅支持 Spark 3.0、3.1 和 3.2。Spark 2.4 版不再受支持。

错误修复

  • 修复了以下问题:字符串“null”被视为类型 NULL

语言: 中文