以下发行说明提供了由 Apache Spark 3.3.0 提供支持的 Databricks Runtime 11.2 的相关信息。 Databricks 于 2022 年 9 月发布了这些映像。
新增功能和改进
更改表访问控制(表 ACL)中的 ALTER TABLE 权限
MERGE INTO 的动态修剪
通过动态文件修剪改进了 Delta 中的冲突检测
DSE/SQL 主页中的新“开源集成”卡
CONVERT TO DELTA 分区检测改进
表架构现在支持列的默认值
新的 H3 地理空间函数
新的 Databricks Runtime 依赖项
自带密钥:Git 凭据加密
SQL:新的聚合函数 any_value
更多群集类型允许使用 Databricks 实用程序文件系统命令
现可授予对 Unity Catalog 元存储的创建权限
优化了启用 Photon 的群集中未分区表的写入
为更多数据源提供 Photon 支持
SQL:ALTER SHARE 现在支持 START VERSION
更改表访问控制(表 ACL)中的 ALTER TABLE 权限
现在用户仅需要具备
MODIFY
权限即可更改表架构,或使用
ALTER TABLE
权限更改属性。 授予表权限、更改表所有者和位置或重命名表仍需要所有权。 此更改使表 ACL 的权限模型与 Unity Catalog 一致。 请参阅
ALTER TABLE
。
MERGE INTO 的动态删除
MERGE INTO
现在在有效时使用动态文件和分区删除来提高性能。 例如,当一个小的源表被合并到一个更大的目标表中时,通常就是这种情况。
通过动态文件删除改进了 Delta 中的冲突检测
在提交期间检查潜在冲突时,冲突检测现在会考虑由动态文件删除删除但没有由静态筛选器删除的文件。 这导致失败的事务数量减少。
DSE/SQL 主页中的新“开源集成”卡
在 DSE/SQL 主页中引入新的“开源集成”卡来显示开源集成选项,例如增量实时表和 dbt core。
CONVERT TO DELTA 分区检测改进
CONVERT TO DELTA
会自动推断注册到 Hive 元存储或 Unity Catalog 的 Parquet 表的分区架构,而无需提供
PARTITIONED BY
子句。
CONVERT TO DELTA
利用元存储中的分区信息来发现 Parquet 表的文件而不是列出整个基本路径,从而确保删除的分区不会添加到 Delta 表中。
请参阅
转换为 Delta Lake
。
表架构现在支持列的默认值
表架构现在支持为列设置默认值。 这些列的
INSERT
、
UPDATE
和
DELETE
命令可以使用
DEFAULT
关键字引用这些值。 例如,
CREATE TABLE t (id INT, data INT DEFAULT 42) USING PARQUET
后跟
INSERT INTO t VALUES (1, DEFAULT)
将追加行
(1, 42)
。 CSV、JSON、Orc 和 Parquet 数据源支持此行为。
新的 H3 地理空间函数
现在可以使用 28 个新的内置 H3 表达式,在支持 Photon 的群集中进行地理空间处理(适用于 SQL、Scala 和 Python)。 请参阅
H3 地理空间函数
。
新的 Databricks Runtime 依赖项
Databricks Runtime 现在依赖于
H3 Java 库版本 3.7.0
。
自带密钥:Git 凭据加密
可以使用 Azure Key Vault 加密 Git 个人访问令牌 (PAT) 或其他 Git 凭据。
请参阅
设置 Databricks Repos
。
SQL:新的聚合函数 any_value
新的
any_value
聚合函数为一组行返回
expr
的任何随机值。 请参阅
any_value 聚合函数
。
更多群集类型允许使用 Databricks 实用程序文件系统命令
dbutils.fs
命令(与装载相关的命令除外)现在允许在具有 Unity Catalog 的用户隔离群集以及用户拥有
ANY FILE
权限时的旧表 ACL 群集上使用。
现可授予对 Unity Catalog 元存储的创建目录、创建外部位置、创建共享、创建收件人和创建提供程序权限。
优化了启用 Photon 的群集中未分区表的写入
Unity Catalog 托管表现在会自动保存未分区表中大小合适的文件,以提高查询速度和优化性能。
为更多数据源提供 Photon 支持
Photon 现在支持更多数据源,包括 CSV 和 Avro,并与缓存数据帧兼容。 以前扫描这些数据源时,无论查询的运算符或表达式如何,都无法 Photon 化整个查询。 现在,扫描这些数据源的查询可 Photon 化,从而显著改进延迟和 TCO。
默认情况下,此功能通过
spark.databricks.photon.photonRowToColumnar.enabled
配置启用。
此版本中不支持具有嵌套类型的架构(即数组、映射和结构)。
此版本中不支持 ORC、RDD、Kinesis、Kafka 和 EventHub 源。
SQL:ALTER SHARE 现在支持 START VERSION
ALTER SHARE
命令现在支持
START VERSION
,它允许提供程序共享从特定表版本开始的数据。 请参阅
更改共享
。
升级了 Python 库:
-
distlib 已从 0.3.4 升级到 0.3.5
-
filelock 已从 3.7.1 升级到 3.8.0
-
plotly 已从 5.8.2 升级到 5.9.0
-
protobuf 已从 4.21.2 升级到 4.21.5
-
升级了 R 库:
-
broom 已从 0.8.0 升级到 1.0.0
-
bslib 已从 0.3.1 升级到 0.4.0
-
callr 从 3.7.0 到 3.7.1
-
caret 已从 6.0-92 升级到 6.0-93
-
dbplyr 已从 2.2.0 升级到 2.2.1
-
devtools 已从 2.4.3 升级到 2.4.4
-
evaluate 已从 0.15 升级到 0.16
-
farver 已从 2.1.0 升级到 2.1.1
-
fontawesome 从 0.2.2 到 0.3.0
-
future 已从 1.26.1 升级到 1.27.0
-
generics 已从 0.1.2 升级到 0.1.3
-
gert 已从 1.6.0 升级到 1.7.0
-
globals 已从 0.15.1 升级到 0.16.0
-
googlesheets4 已从 1.0.0 升级到 1.0.1
-
hardhat 已从 1.1.0 升级到 1.2.0
-
htmltools 已从 0.5.2 升级到 0.5.3
-
parallelly 已从 1.32.0 升级到 1.32.1
-
pillar 已从 1.7.0 升级到 1.8.0
-
pkgload 已从 1.2.4 升级到 1.3.0
-
processx 已从 3.6.1 升级到 3.7.0
-
Rcpp 已从 1.0.8.3 升级到 1.0.9
-
recipes 已从 0.2.0 升级到 1.0.1
-
rlang 已从 1.0.2 升级到 1.0.4
-
roxygen2 已从 7.2.0 升级到 7.2.1
-
RSQLite 已从 2.2.14 升级到 2.2.15
-
sass 已从 0.4.1 升级到 0.4.2
-
shiny 从 1.7.1 到 1.7.2
-
stringi 已从 1.7.6 升级到 1.7.8
-
tibble 已从 3.1.7 升级到 3.1.8
-
tidyverse 已从 1.3.1 升级到 1.3.2
-
timeDate 从 3043.102 升级到 4021.104
-
xfun 已从 0.31 升级到 0.32
-
升级了 Java 库: