以下发行说明提供了由 Apache Spark 3.3.0 提供支持的 Databricks Runtime 11.1 的相关信息。 Databricks 于 2022 年 7 月发布了这些映像。
新增功能和改进
Photon 已正式发布
Photon:受支持的实例类型
更改数据馈送现在可以自动处理超出范围的时间戳
描述和显示 SQL 函数现在在其输出中显示 Unity Catalog 名称(公共预览版)
自动加载程序中 Parquet 文件的架构推理和演变(公共预览版)
自动加载程序现在支持 Avro (GA) 的架构演变
Delta Lake 支持动态分区覆盖
对在 Unity Catalog 中创建的对象的信息架构支持
对使用 Unity Catalog 的 Delta Lake 表的信息约束(公共预览版)
Unity Catalog 已正式发布
Delta Sharing 已正式发布
Photon 已正式发布
Photon
现已正式发布(从 Databricks Runtime 11.1 开始)。 Photon 是 Azure Databricks 原生的向量化查询引擎,直接与 Apache Spark API 兼容,因此可以处理现有的代码。 Photon 是使用 C++ 开发的,它利用了新式硬件,并使用最新的向量化查询处理技术基于 CPU 中的数据级和指令级并行度产生价值,可以增强实际数据和应用程序的性能 - 所有这些功能在 Data Lake 上都以原生方式实现。
Photon 是能够更快运行现有 SQL 和数据帧 API 调用,并降低每个工作负载总成本的高性能运行时的一部分。 Databricks SQL 仓库中默认使用 Photon。
新增功能和改进包括:
新的向量化排序运算符
新的向量化窗口函数
跨所有云的新实例类型和大小
Photon 不支持 Scala/Python UDF
Photon 不支持 RDD
Photon 不支持结构化流
有关详细信息,请参阅以下 Photon 公告。
Photon:新的向量化排序运算符
当查询包含
SORT_BY
、
CLUSTER_BY
或带有
ORDER BY
的窗口函数时,Photon 现在支持向量化排序。
限制:Photon 不支持全局
ORDER BY
子句。 用于窗口计算的排序将进行光化,但全局排序将继续在 Spark 中运行。
Photon:新的向量化窗口函数
Photon 现在支持许多帧类型和函数的向量化窗口函数计算。 新的窗口函数包括:
row_number
、
rank
、
dense_rank
、
lag
、
lead
、
percent_rank
、
ntile
和
nth_value
。 受支持的窗口框架类型:运行 (
UNBOUNDED PRECEDING AND CURRENT ROW
)、无界 (
UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
)、增长 (
UNBOUNDED PRECEDING AND <OFFSET> FOLLOWING
) 和缩小 (
<OFFSET> PRECEDING AND UNBOUNDED FOLLOWING
)。
Photon 仅支持所有帧类型的
ROWS
版本。
Photon 尚不支持滑动帧类型 (
<OFFSET> PRECEDING AND <OFFSET> FOLLOWING
)。
Photon:受支持的实例类型
dds_v5
ds_v5
eas_v4
eds_v4
eds_v5
es_v5
las_v3
ls_v3
更改数据馈送现在可以自动处理超出范围的时间戳
更改数据馈送 (CDF) 现在有一种新模式,可提供时间戳或高于最新提交版本的版本,而不会引发错误。 默认情况下禁用此模式。 可以通过将配置
spark.databricks.delta.changeDataFeed.timestampOutOfRange.enabled
设置为
true
来启用该模式。
描述和显示 SQL 函数现在在其输出中显示 Unity Catalog 名称(公共预览版)
命令
DESC TABLE
、
DESC DATABASE
、
DESC SCHEMA
、
DESC NAMESPACE
、
DESC FUNCTION
、
EXPLAIN
和
SHOW CREATE TABLE
现在始终在其输出中显示 Catalog 名称。
自动加载程序中 Parquet 文件的架构推理和演变(公共预览版)
自动加载程序现在支持 Parquet 文件的架构推理和演变。 与 JSON、CSV 和 Avro 格式一样,现可使用补救数据列来补救 Parquet 文件中可能会出现的意外数据。 这包括在预期的数据类型中无法分析的数据、具有不同大小写的列或者不是预期架构一部分的其他列。 可以将自动加载程序配置为在传入数据中添加新列时自动演变架构。 请参阅
在自动加载程序中配置架构推理和演变
。
自动加载程序现在支持 Avro (GA) 的架构演变
请参阅
在自动加载程序中配置架构推理和演变
。
Delta Lake 支持动态分区覆盖
Delta Lake 现在启用动态分区覆盖模式,以覆盖每个逻辑分区中的所有现有数据,写入操作将为这些分区提交新数据。 请参阅
使用 Delta Lake 选择性地覆盖数据
。
信息架构为各种数据库对象(包括表和视图、约束和例程)的元数据提供基于 SQL 的自描述 API。
在信息架构中,可以找到一组视图,这些视图描述了你有权查看的架构目录中的已知对象。
SYSTEM
目录的信息架构返回有关元存储中所有目录的对象的信息。
请参阅
信息架构
。
现在可以使用 Unity Catalog 在 Delta Lake 表上定义信息主键和外键约束。
不强制执行信息约束。
请参阅
CONSTRAINT 子句
。
Unity Catalog 已正式发布
Unity Catalog 现已正式发布(从 Databricks Runtime 11.1 开始)。 请参阅
什么是 Unity Catalog?
。
Delta Sharing 已正式发布
Delta Sharing 现已正式发布(从 Databricks Runtime 11.1 开始)。
Databricks 到 Databricks Delta Sharing 是完全托管的,无需交换令牌。 可以在 UI 中或使用 SQL 和 REST API 创建和管理提供者、接收者和共享。
部分功能包括限制接收者访问、使用 IP 访问列表和区域限制查询数据,以及将 Delta Sharing 管理委托给非管理员。 你还可以查询对数据的更改,或使用更改数据馈送共享增量版本。 参阅
使用 Delta Sharing 安全共享数据
。
DESCRIBE TABLE 和 SHOW TABLE PROPERTIES 的敏感属性编辑
DESCRIBE TABLE
和
SHOW TABLE PROPERTIES
命令现在可以编辑敏感属性。
对于 Databricks Runtime 11.1 及更高版本,作业群集默认设置为单用户访问模式
为了支持 Unity Catalog,使用 Databricks Runtime 11.1 及更高版本通过作业 UI 或作业 API 创建的作业群集将默认设置为单用户访问模式。 单用户访问模式支持大多数编程语言、群集功能和数据治理功能。 你仍然可以通过 UI 或 API 配置共享访问模式,但语言或功能可能会受限。
升级了 Python 库:
-
filelock 已从 3.6.0 升级到 3.7.1
-
plotly 已从 5.6.0 升级到 5.8.2
-
protobuf 已从 3.20.1 升级到 4.21.2
-
升级了 R 库:
-
chron 已从 2.3-56 升级到 2.3-57
-
DBI 已从 1.1.2 升级到 1.1.3
-
dbplyr 已从 2.1.1 升级到 2.2.0
-
e1071 已从 1.7-9 升级到 1.7-11
-
future 已从 1.25.0 升级到 1.26.1
-
globals 已从 0.14.0 升级到 0.15.1
-
hardhat 已从 0.2.0 升级到 1.1.0
-
ipred 已从 0.9-12 升级到 0.9-13
-
openssl 已从 2.0.0 升级到 2.0.2
-
parallelly 已从 1.31.1 升级到 1.32.0
-
processx 已从 3.5.3 升级到 3.6.1
-
progressr 已从 0.10.0 升级到 0.10.1
-
proxy 已从 0.4-26 升级到 0.4-27
-
ps from 已从 1.7.0 升级到 1.7.1
-
randomForest 已从 4.7-1 升级到 4.7-1.1
-
roxygen2 已从 7.1.2 升级到 7.2.0
-
Rserve 已从 1.8-10 升级到 1.8-11
-
RSQLite 已从 2.2.13 升级到 2.2.14
-
sparklyr 已从 1.7.5 升级到 1.7.7
-
tinytex 已从 0.38 升级到 0.40
-
usethis 已从 2.1.5 升级到 2.1.6
-
xfun 已从 0.30 升级到 0.31
-
升级了 Java 库: