2023 年 3 月¶
本月推出了以下新功能、行为变更和更新(增强、修复等)。如果您对这些新增功能有任何疑问,请联系 Snowflake 支持部门 (https://community.snowflake.com/s/article/How-To-Submit-a-Support-Case-in-Snowflake-Lodge)。
重要
每个版本都可能包含需要刷新 Web 界面的更新。
为确保这些更新不会影响您的使用,我们建议的一般做法是在部署每个 Snowflake 版本后刷新 Web 界面。
本主题内容:
新功能¶
Snowpipe Streaming – 预览版¶
在此版本中,Snowflake 很高兴地宣布推出 Snowpipe Streaming 预览版,这是 Snowflake 引入产品的最新成员。Snowpipe Streaming API 将数据行直接写入 Snowflake 表,而无需暂存文件。这种架构可降低加载延迟,并相应降低加载任何数据量的费用,因此是处理近乎实时数据流的强大工具。
有关更多信息,请参阅 Snowpipe Streaming。Snowpipe Streaming 现在还可用于 Snowflake Connector for Kafka,它提供了简单的升级路径,以利用更低的延迟和更低的成本负载。
Java 或 Scala 存储过程的表格返回值 – 预览版¶
在此版本中,Snowflake 很高兴地宣布推出使用 Java 或 Scala 编写的处理程序的表格存储过程预览版。您可以编写一个过程,以表格形式返回数据。为此,您需要将过程的返回类型指定为 TABLE (为返回值指定列),然后让您的处理程序代码在一个 Snowpark 数据框中返回表格值。
有关更多信息,请参阅 使用 Java 编写存储过程 或 使用 Scala 编写存储过程。
新区域¶
我们很高兴地宣布将在以下新区域投入使用:
云平台 |
区域 |
---|---|
Amazon Web Services (AWS) |
亚太地区(雅加达) |
随着该区域的加入,Snowflake 现在支持三个云平台(AWS、GCP 和 Azure)的超过三十五个全球 区域,其中包括三个支持遵守 US 政府法规的区域。
您可以通过 自助服务 (https://signup.snowflake.com/) 或 Snowflake 代表在区域中预置初始账户。
SQL 更新¶
用于形状转换和定位的地理空间函数 – 预览版¶
在此版本中,我们很高兴地宣布推出以下用于形状转换和定位的地理空间函数预览版:
函数 |
Description |
---|---|
ST_BUFFER (适用于 GEOMETRY 对象) |
返回一个表示 MultiPolygon 的 GEOMETRY 对象,该多边形包含输入 GEOMETRY 对象指定距离内的点。返回的对象有效表示输入对象周围的一个“缓冲区”。 |
ST_SIMPLIFY (适用于 GEOMETRY 对象) |
如果输入的 GEOMETRY 对象表示直线或多边形,则返回该对象的较简单近似值。该函数会识别并移除选中的顶点,从而生成一个顶点数量更少的类似对象。 |
ST_AZIMUTH (适用于 GEOMETRY 对象) |
鉴于两个点为 GEOMETRY 对象,返回由这两个点形成的线段的方位角(以弧度为单位)。 |
ST_MAKEPOLYGONORIENTED (适用于 GEOGRAPHY 对象) |
构造一个 GEOGRAPHY 对象,表示一个无孔多边形。此函数使用指定的 LineString 作为外部循环。该函数不会试图纠正循环的方向,因此可以创建横跨球体一半以上的多边形。该函数与 ST_MAKEPOLYGON 不同,后者会反转这些大型形状的方向。 |
预览版功能用于评估和测试目的,不建议在生产环境中使用。
指定如何处理无效的地理空间形状的支持 – 预览版¶
在此版本中,我们很高兴地宣布推出处理无效的地理空间形状的支持预览版。
默认情况下,当您使用 地理空间转换函数 将 支持的输入格式的数据 转换为 GEOGRAPHY 或 GEOMETRY 对象时,该函数会尝试验证形状,并在形状无效时修复形状。如果无法修复形状,则函数不会创建 GEOGRAPHY 或 GEOMETRY 对象。
有了这项预览版功能,您就可以更好地控制验证和修复过程。您可以:
允许这些转换函数为无效形状创建 GEOGRAPHY 和 GEOMETRY 对象。
确定 GEOGRAPHY 或 GEOMETRY 对象的形状是否无效。
有关详细信息,请参阅 指定如何处理无效的地理空间形状。
数据管道更新¶
视图上的流 – 正式发布¶
在此版本中,我们很高兴地宣布视图上的流已正式发布。视图上的流扩展了表流,可跟踪视图(包括安全视图)的变更数据获取 (CDC) 记录。
目前,流仅适用于满足以下要求的视图:
所有基础表都必须是原生表。
该视图只能应用以下操作:
预测
筛选器
内联接或交叉联接
UNION ALL
不支持物化视图。
有关视图上的流要求的更多信息,请参阅 Streams 简介。
数据湖更新¶
外部表和目录表自动刷新可观察性和计费¶
在此版本中,Snowflake 将开始对外部表和外部暂存区目录表中的自动刷新通知计费,费率与 Snowpipe 文件收费相当。您可以通过检查 Account Usage PIPE_USAGE_HISTORY 视图 来估算外部表和目录表自动刷新通知所产生的费用。请注意,自动刷新管道将使用 NULL 管道名称列出。您还可以使用 Information Schema 表函数 AUTO_REFRESH_REGISTRATION_HISTORY,以表级/暂存区级精细度查看外部表自动刷新通知历史记录。
为避免产生自动刷新通知费用,请为外部表和目录表执行手动刷新。对于外部表,可使用 ALTER EXTERNAL TABLE <name> REFRESH ... 语句将外部表手动同步到外部存储。对于目录表,可使用 ALTER STAGE <name> REFRESH ... 语句将目录手动同步到外部存储。
数据治理更新¶
允许将掩码列作为行访问策略和条件掩码策略的输入项¶
在此版本中,Snowflake 很高兴地宣布,行访问策略和条件掩码策略的签名可以指定受掩码策略保护的列。在策略签名中指定掩码列,可为策略管理员创建新策略或替换现有策略提供更大的自由度。
要启用此功能,请在创建新掩码策略或替换现有掩码策略时将 EXEMPT_OTHER_POLICIES
属性设置为 TRUE
。请注意,不能在现有策略上设置此属性;必须替换现有策略才能包含此属性。创建或替换掩码策略后,可在列上设置该策略,并在行访问策略或条件掩码策略的签名中引用受保护的列。
有关详细信息,请参阅 CREATE MASKING POLICY。
复制更新¶
账户复制:通知集成支持 – 预览版¶
在此版本中,账户复制现在包括对以下类型的通知集成对象复制的预览版支持:
TYPE = EMAIL
TYPE = QUEUE 和 DIRECTION = OUTBOUND
有关更多信息,请参阅 集成复制。
Web 界面¶
Python 工作表 – 预览版¶
在此版本中,我们很高兴地宣布在 Snowsight 中推出 Python 工作表预览版。Python 工作表可让您在 Snowsight 工作表中编写和运行 Python。
在 Python 工作表中,您可以执行以下操作:
编写 Python 脚本,从暂存区读取数据、转换数据并将其保存到表中,所有这一切操作都无需离开 Snowsight。
使用 Anaconda 附带的包或从某个暂存区导入包,更轻松地编写代码。
通过将 Python 代码部署为存储过程并调度为任务,自动执行代码。
有关更多信息,请参阅 在 Python 工作表中编写 Snowpark 代码。
个人任务可观测性 – 正式发布。¶
在此版本中,我们很高兴地宣布正式发布个人任务可观测性功能。任务现在可以在图形视图中看到,以突出显示依赖关系和执行顺序。通过单个任务运行可观测性,您可以执行监控任务,如识别长期运行的任务、持续跳过的任务以及任务量大的数据库。
有关更多信息,请参阅 查看 Snowsight 中的任务和任务图。