Databricks SQL 发行说明
本文列出了新的 Databricks SQL 功能和改进,以及已知问题和常见问题解答。
发布过程
Databricks 将持续发布对 Databricks SQL Web 应用程序用户界面的更新,所有用户都获得相同的更新,并在短时间内推出。
此外,Databricks 通常会定期发布新的 SQL 仓库计算版本。 两个通道始终可用:“预览”和“当前”。
注意
发布分阶段进行。 你的 Databricks 帐户只有在初始发布日期后一周或更长时间之后才可能更新为新的 SQL 仓库版本或 Databricks SQL 功能。
注意
Databricks SQL不适用于 Azure 中国区域。
声道
通道可让你选择是使用当前 SQL 仓库计算版本还是预览版本。 预览版可让你在某些功能成为 Databricks SQL 标配之前试用这些功能。 利用预览版本针对即将发生的更改测试你的生产查询和仪表板。
通常,预览版本会在发布到预览版通道大约两周后升级为当前通道。 某些功能(如安全功能、维护更新和 bug 修复)可能会直接发布到当前通道。 Databricks 可能会经常将预览版本提升到当前的通道,并按不同的时间表进行。 每个新版本将在以下部分中公布。
若要了解如何将现有 SQL 仓库切换到预览版通道,请参阅使用预览版通道。
当前
版本 2022.17:2022 年 5 月 4 日
- 以下 SQL 函数现已在此版本中提供:
- SQL UDF 支持其参数的
DEFAULT的定义。 - 现在可以使用“创建表”UI 通过引入小型 CSV 文件(最大为 100mb)来创建 Delta 表。 这个新 UI 支持使用推断架构进行 CSV 文件上传和数据预览。 它支持在创建表之前编辑列名、数据类型和常用格式选项。 在此 UI 中,可以为新表指定目标路径(目录和架构)。
预览
版本 2022.20:2022 年 5 月 23-30 日
- 此版本中添加或更新了以下 Spark SQL 函数:
- ceil 函数、ceiling 函数和 floor 函数现在支持用于指定目标小数位数的第二个可选参数。
- 新的 regr_avgx 聚合和 regr_avgy 聚合函数支持线性回归。
- 除了支持字符串外,contains、startswith 和 endswith 函数现在还支持将二进制数据类型作为输入。
- 新的 array_size 函数计算数组的大小。
- 新的 regr_count 函数返回组中非 NULL 值对
yExpr、xExpr的数量。 - 新的 to_number 函数使用格式
fmt将expr转换为十进制。 - 新的 try_sum 聚合函数返回根据组值计算的总和,如果存在溢出,则返回 NULL。
- 新的 try_to_number 函数使用格式
fmt将expr转换为十进制,如果expr与格式不匹配,则返回NULL。
- 新的文件 _metadata 列可用于输入文件格式。 可以使用
_metadata列获取输入文件的元数据信息。_metadata列处于隐藏状态。 若要将_metadata列包含在返回的数据帧中,必须在查询中显式引用此列。
Web 应用程序用户界面更新
本节中列出的功能与发行说明的通道部分中描述的 SQL 仓库计算版本无关。
2022 年 7 月 14 日
- 除 CSV 文件外,现在还可使用
Create TableUI 上传 TSV 文件。 - 每当与用户共享仪表板、查询或警报时,Databricks SQL 现在都会提供通过电子邮件通知用户的选项。
- 可视化效果表中现在可以选择包含结果旁边显示的行号。
- 为 Chloropleth 可视化效果选择地理区域时,现在会获取接受值的内联提示。
2022 年 6 月 23 日
- SQL 终结点名称更改:Databricks 将 SQL 终结点更名为 SQL 仓库,因为它不仅仅是运行 SQL 命令的 API 入口点。 SQL 仓库是满足所有数据仓库需求的计算资源,是 Lakehouse 平台不可分割的一部分。 计算资源是在云中提供处理功能的基础结构资源。
- 对于 Choropleth 可视化效果,可视化编辑器中的键列和目标字段选择已重命名为地理列和地理类型。 为便于理解而进行的重命名不会导致新的或现有的 Choropleth 出现任何行为更改。
- 限制 1000 个查询这一选项已从 SQL 查询编辑器中的复选框移动到运行按钮中的复选框。
- 查询历史记录表中的缓存查询现使用“缓存”标记进行标记。
- 手动刷新仪表板会使用仪表板的仓库(如果可用),而不是每个查询的仓库。
- 无论是以查看者身份运行,还是以所有者身份运行,刷新警报都始终使用警报的仓库。
2022 年 6 月 9 日
- 将鼠标悬停在终结点选择器中时,完整的终结点名称将显示为工具提示。
- 在 SQL 编辑器架构浏览器中进行筛选时,搜索结果中现在突出显示了搜索词。
- SQL 编辑器中的“关闭所有”对话框现在显示未保存的查询列表。
- 若要在 SQL 编辑器中重新打开最后一个关闭选项卡,请使用以下新键盘快捷方式:
<Cmd> + <Shift> + <Option> + T - 现在可以向组合图表添加数据标签。
- 可视化聚合操作的列表现在包括方差和标准偏差。
2022 年 5 月 26 日
创作改进:
- 现在可以在创作可视化效果时绕过聚合。 在查询已包含聚合时,此功能特别有用。 例如,如果查询是
SELECT AVG(price_per_sqft), isStudio, location GROUP BY location, isStudio,则图表编辑器以前需要明确指定另一个聚合层。 - 现在可以在创作仪表板时执行以下操作:
- 重复文本框小组件
- 扩大编辑文本框面板的大小
- 创作可视化效果时,错误列的默认聚合是标准偏差。
修复项:
- 可视化效果的编辑操作仅在仪表板处于编辑模式时可用。 编辑操作不再可用作视图模式操作。
- 创建新查询时,该查询将在焦点选项卡右侧的选项卡中打开,而不是在列表末尾打开。
- 打开查询模式显示哪个查询已打开,并提供将焦点切换到该查询选项卡的选项。
- 桑基图和旭日图不再将 0 视为 NULL。
2022 年 5 月 19 日
- 已修复问题:当你在特定可视化效果选项卡上打开 SQL 编辑器的焦点并将链接共享给其他用户后,该用户在单击共享链接时将在 SQL 编辑器中具有相同的焦点。
- 改进:
- Microsoft Teams 现在是受支持的警报目标。
- 日期范围、日期和时间范围以及日期和时间范围(以秒为单位)参数现在支持用于指定一周开始日期的选项(默认为星期日)。
2022 年 5 月 12 日
- 可视化效果现在直接支持 UI 中的时间分箱。 现在,可以通过更改下拉列表值(而不是在查询文本本身中添加和修改
date_trunc()函数),在每年、每月、每日或每小时的数据箱之间轻松切换。 - 现在,默认情况下仪表板具有颜色一致性。 如果多个图表中具有相同的系列,则该系列在所有图表中始终具有相同的颜色 - 无需任何手动配置。
2022 年 5 月 3 日
- 与用户或组共享仪表板时,现在还可以共享由可视化效果使用的所有上游查询和参数。
- 如果无权共享一个或多个上游查询,将会收到一条警告消息,指出并非所有查询都可以共享。
- 共享仪表板时授予的权限不会替代、否定或扩展上游查询上的现有权限。 例如,如果用户或组在共享仪表板上具有“可以作为所有者运行”权限,但只对上游查询具有“以查看者身份运行”权限,则该上游查询上的有效权限将是“以查看者身份运行”。
2022 年 4 月 27 日
- 现在,当按需导出到 PDF 以及生成计划的订阅电子邮件时,仪表板布局将会保留。
2022 年 3 月 17 日
- 图表包括新的组合可视化选项。 这样就可以创建包含条形和线的图表。
2022 年 3 月 10 日
Unity Catalog(预览版)允许你在帐户级别管理治理和访问数据。 可以集中管理元存储和数据权限,并且可以将元存储分配给帐户中的多个工作区。 可以使用 Databricks SQL 数据资源管理器或 SQL 编辑器来管理 Unity Catalog 数据和对象并与之交互,并且可以在仪表板和可视化效果中使用 Unity Catalog 数据。 请参阅 Unity Catalog(预览版)。
注意
Unity Catalog 要求 SQL 终结点使用预览版通道中的版本 2022.11。
Delta Sharing(预览版)允许你与组织外部的收件人共享只读数据。 Databricks SQL 支持查询 Delta Sharing 数据并将其用于可视化和仪表板。
每次手动或按计划刷新仪表板时,都会刷新仪表板和上游中的所有查询(包括参数使用的查询)。 刷新单个可视化效果时,将刷新所有上游查询(包括参数使用的查询)。
2022 年 3 月 3 日
- 组群可视化已更新,以便组群从最小值和最大值插入,而不是从 0 和 100 插值。 现在,可以很轻松地在实际可用数据范围内区分组群。 以前,如果所有数字都靠近在一起,则这些数字将使用相同的颜色。 现在,靠近的数字更有可能使用不同的颜色,因为组群从最大到最小范围划分以形成每个系列。
- 可以更轻松地查看仪表板订阅计划是处于活动状态还是已暂停状态。 单击“订阅”时,如果仪表板订阅计划已暂停,则会显示消息“此计划已暂停”。 仪表板订阅计划暂停后,可以订阅或取消订阅仪表板,但不会发送计划的快照,也不会更新仪表板的可视化效果。
- 查看“查询历史记录”时,现在可以按持续时间对列表进行排序。 默认情况下,查询按开始时间排序。
2022 年 2 月 24 日
- 在数据资源管理器中,现在可以查看用户或组对表、视图、架构或目录拥有的权限。 单击对象,然后单击“权限”并使用新的筛选器框。
2022 年 2 月 17 日
- 可视化效果变得更加智能! 当查询产生一列或两列时,系统将自动选择建议的可视化类型。
- 现在,你可以创建直方图可视化效果,以可视化数据集中每个值出现的频率,并了解数据集的值是围绕少量范围聚类还是更分散。
- 在“查询历史记录”和“查询配置文件”中,现在可以将查询字符串和失败查询的错误消息扩展到全角。 这样可以更轻松地分析查询计划并对失败的查询进行故障排除。
- 在条形图、线图、面积图、饼图和热图可视化效果中,现在可以直接在可视化效果配置 UI 中执行聚合,无需修改查询本身。 利用这些新功能时,聚合将在整个数据集上执行,而不是仅限于前 64000 行。 编辑在此版本之前创建的可视化效果时,你将看到一条消息“
This visualization uses an old configuration. New visualizations support aggregating data directly within the editor.”,如果要利用新功能,则必须重新创建可视化效果。 请参阅在可视化效果中启用聚合。
2022 年 2 月 10 日
现在,你可以为仪表板设置自定义调色板。 该仪表板中显示的所有可视化效果都将使用指定的调色板。 设置自定义选项板不会影响可视化效果在其他仪表板或 SQL 编辑器中的显示方式。
你可以为调色板指定十六进制值或从另一个调色板导入颜色,无论是由 Databricks 提供还是由工作区管理员创建。
将调色板应用于仪表板时,默认情况下,该仪表板中显示的所有可视化效果都将使用选定的调色板,即使你在创建可视化效果时配置了自定义颜色也是如此。 若要覆盖此行为,请参阅自定义可视化效果的颜色。
工作区管理员现在可以使用 SQL 管理控制台创建自定义调色板。 创建自定义调色板后,可在新仪表板和现有仪表板中使用自定义调色板。 若要对仪表板使用自定义调色板或对其进行自定义,可以编辑仪表板设置。
当你从 SQL
菜单向仪表板添加使用参数的可视化效果时,可视化效果现在默认使用仪表板级参数。 这与你在仪表板中使用“添加可视化效果”按钮添加小组件时的行为一致。查看查询历史并按参数组合筛选列表时,现在会显示匹配查询的数量。
在可视化效果中,修复了无法将 Y 轴范围调整为特定值的问题。
2022 年 2 月 3 日
标签式 SQL 编辑器现在默认为所有用户启用。 有关更多信息或禁用标签式编辑器,请参阅编辑多个查询。
仪表板电子邮件订阅者现在会收到一个内联映像,其中显示仪表板快照,而不是附件。 快照的 PDF 将附加到电子邮件中。
现在,你可以通过为 SQL 终节点配置现成虚拟机实例策略来平衡可靠性和成本。 现成虚拟机实例策略确定工作器是仅使用按需实例还是同时使用按需实例和现成虚拟机实例。 “成本优化”(默认)主要使用现成虚拟机实例和一个按需实例。 “可靠性优化”仅使用按需实例。 以前,SQL 终结点始终采用按需实例。 要保留此行为,请将现成虚拟机实例策略设置为“可靠性优化”。 请参阅配置现成实例策略。
2022 年 1 月 27 日
改进了查看、共享和导入查询配置文件的方式。 请参阅查询配置文件。
“详细信息”可视化效果现在允许你重命名列,就像“表”可视化效果一样。
现在可以通过中键单击 SQL 编辑器中的标签页来关闭标签页。
以下键盘快捷键已添加到标签式 SQL 编辑器中:
- 关闭所有标签页:Cmd+Option+Shift+A (macOS) / Ctrl+Option+Shift+A (Windows)
- 关闭其他标签页:Cmd+Option+Shift+W (macOS) / Ctrl+Option+Shift+W (Windows)
这些键盘快捷键提供了右键单击选项卡以访问相同操作的替代方法。 若要查看所有键盘快捷方式,请在选项卡式 SQL 编辑器中单击
“键盘”图标。
2022 年 1 月 20 日
- 表中整数和浮点型数据类型的默认格式已更新为不包含逗号。 这意味着默认情况下,
10002343等值将不再有逗号。 若要设置这些类型的格式以使用逗号显示,请单击“编辑可视化效果”,展开列的区域,然后修改格式以包含逗号。 - 为了更好地与浏览器呈现限制保持一致,可视化效果现在最多显示 10000 个数据点。 例如,散点图最多显示 10000 个数据点。 如果数据点的数量受到限制,则会显示警告。
2022 年 1 月 13 日
- 修复了 SQL 编辑器中的“保存”按钮有时被禁用的问题。 “保存”按钮现在始终处于启用状态,并且在检测到未保存的更改时会包含一个星号 (
*)。
2021 年 12 月 15 日
- Databricks SQL 现已正式发布。 这标志着为你提供第一个将数据、AI 和 BI 工作负载统一在一个地方的 Lakehouse 平台的一个重要里程碑。 借助 GA,Databricks 将能够为任务关键型工作负载提供最高级别的稳定性、支持和企业就绪性。 请阅读 GA 公告博客以了解更多信息。
- 警报现在是独立于查询进行计划的。 创建新警报并创建查询时,系统还会提示你为警报创建计划。 如果你有现有警报,则我们已从原始查询复制了计划。 此更改还允许你为“以所有者身份运行”和“以查看者身份运行”查询设置警报。 “以所有者身份运行”查询使用查询所有者的凭据按指定的警报计划运行。 “以查看者身份运行”查询使用警报创建者的凭据在指定的警报计划上运行。 请参阅警报和计划查询。
- 现在,你可以在 SQL 编辑器和仪表板中对参数重新排序。
- 有关创建热图可视化效果的文档已扩展。 请参阅热图可视化效果。
2021 年 12 月 9 日
- 创建表可视化效果时,现在可以将列的字体颜色设置为静态值或基于列的字段值的值范围。 字面值将与阈值进行比较。 例如,要对值超过
500000的结果进行着色,请创建阈值> 500000,而不是> 500,000。 请参阅有条件地设置列颜色格式。 - 通过标签式 SQL 编辑器架构浏览器中的图标,可以区分表和视图。
2021 年 12 月 1 日
- 现在可以在工作区级别应用 SQL 配置参数。 这些参数会自动应用于工作区中的所有现有和新的 SQL 终结点。 请参阅 SQL 配置参数。
2021 年 11 月 18 日
查看查询的历史记录时,现在可以在运行查询的服务主体上筛选查询。 请参阅查看查询历史记录。
你现在可以使用侧边栏快捷方式打开 SQL 编辑器。 若要打开 SQL 编辑器,请单击“SQL 编辑器”。
如果你有权创建数据科学和工程群集,现在可以通过单击侧栏中的“创建”并单击“SQL 终结点”来创建 SQL 终结点。
管理员现在可以通过 UI 将查询、仪表板或警报的所有权转让给其他用户。 请参阅:
2021 年 11 月 4 日
- 在地图 (Chloropleth) 可视化可视化效果中,图例中颜色的最大梯度步数已从 11 增加到 20。 默认值为 5 个梯度步,包括“最小颜色”和“最大颜色” 。
- 选项卡式 SQL 编辑器现在支持批量选项卡管理。 如果右键单击某个选项卡,将看到“关闭其他”、“关闭左侧”、“关闭右侧”和“关闭所有”选项 。 请注意,如果右键单击第一个或最后一个选项卡,则不会看到“关闭左侧”或“关闭右侧”选项 。
2021 年的 10 月 28 日
- 在数据资源管理器中查看表时,可使用两个选项来简化与表的交互:
2021 年 10 月 19 日
- 选项卡式编辑器中现在提供了新的键盘快捷方式:
- 打开新选项卡:
- Windows:
Cmd+Alt+T - Mac:
Cmd+Option+T
- Windows:
- 关闭当前选项卡
- Windows:
Cmd+Alt+W - Mac:
Cmd+Option+W
- Windows:
- 打开查询对话框
- Windows:
Cmd+Alt+O - Mac:
Cmd+Option+O
- Windows:
- 打开新选项卡:
2021 年 9 月 23 日
- 你现在可以通过克隆现有仪表板来创建新仪表板,前提是对仪表板及所有上游查询具有“可运行”、“可编辑”和“可管理”权限 。 请参阅克隆仪表板。
- 现在可以在包含多个 Y 轴列的可视化效果中使用
GROUP BY。 请参阅分组。 - 现在可以使用
{{ @@yPercent}}在非规范化堆积条形图中设置数据标签的格式。 请参阅堆叠。 - 如果使用 SAML 身份验证并且 SAML 凭据将在几分钟内过期,则现在在执行查询或刷新仪表板之前,系统会主动提示重新登录。 这有助于防止操作因凭据在查询执行期间过期而中断。
2021 年 9 月 20 日
- 现在可以使用权限 REST API 转让仪表板、查询和警报的所有权。 请参阅转让 Databricks SQL 对象的所有权。
2021 年 9 月 16 日
- 在查询结果中,
BIGINT结果大于 9007199254740991 时,现在会被串行化为字符串。 这修复了BIGINT结果在查询结果中可能被截断的问题。 其他整数结果仍序列化为数字。 轴标签和工具提示上的数字格式设置不适用于序列化为字符串的BIGINT结果。 有关 Databricks SQL 中的数据类型的详细信息,请参阅 BIGINT 类型 (Databricks SQL)。
2021 年 9 月 7 日
Databricks 将在一周的时间内推出后续更改。 直到 9 月 7 日之后,你的工作区才可能启用这些更改。
Databricks SQL 现提供公共预览版,并对新工作区中的所有用户启用。
注意
如果你的工作区在公共预览版期间(即 2021 年 9 月 7 日开始的一周之前)启用了 Databricks SQL,用户将保留在该日期之前分配的权利,除非你对其进行更改。 换句话说,如果用户在公共预览版期间没有访问 Databricks SQL 的权限,那么除非管理员授予他们权限,否则他们现在不会拥有权限。
管理员可通过向用户或组分配“Databricks SQL 访问权限”权利(API 中的 )来管理哪些用户有权访问 Databricks SQL。 新用户默认具有此权利。
管理员可限制用户或组仅访问 Databricks SQL,并且可通过从用户或组中删除“工作区访问权限”权利(API 中的
workspace-access)来防止他们访问数据科学与工程或 Databricks 机器学习。 新用户默认具有此权利。重要
若要登录并访问 Azure Databricks,用户必须具有“Databricks SQL 访问权限”或“工作区访问权限”,或两者兼有 。
有关详细信息,请参阅管理用户和组。
一个名为 Starter Endpoint 的小型经典 SQL 端点已在所有工作区预配,使你可以立即开始创建仪表板、可视化效果和查询。 为了处理更复杂的工作负载,可轻松地增大其大小(以减少延迟)或增加底层群集的数量(以处理更多并发用户)。 为了管理成本,Starter Endpoint 被配置为在空闲 120 分钟后终止。
为了帮助你快速启动和运行,管理员和用户可以使用全新的引导式加入体验。 默认情况下,加入面板可见,你始终可以在
上方的边栏中查看剩余的加入任务数量。 单击“剩余任务”以重新打开加入面板。可通过名为
SAMPLES的只读目录中的两个丰富数据集快速开始使用Databricks SQL,该目录可在所有工作区中使用。 在了解 Databricks SQL 时,可使用这些数据库来创建查询、可视化效果和仪表板。 无需配置,并且所有用户都有权访问这些数据库。nyctaxi数据库包含trips表中的出租车行程数据。- 该
tpch数据库包含下表中的零售收入和供应链数据:customerlineitemnationorderspartpartsuppregionsupplier
单击加入面板中的“运行第一个查询”,生成 数据库的新查询。
若要了解如何在 Databricks SQL 中对数据进行可视化,而无需进行任何配置,可以从仪表板示例库中导入仪表板。 这些仪表板由
SAMPLES目录中的数据集提供支持。若要查看仪表板示例库,请单击加入面板中的“导入示例仪表板”。
你现在可以使用 CREATE FUNCTION 和 DROP FUNCTION 命令创建和删除本机 SQL 函数。
2021 年 9 月 2 日
对仪表板具有“可编辑”权限的用户现在可管理仪表板的刷新计划和订阅列表。 之前,需要具备“可管理”权限。 有关详细信息,请参阅自动刷新仪表板。
默认情况下,可视化效果不再根据返回的结果数动态重设大小,而是无论结果数如何,都维持相同的高度。 若要返回到之前的行为并配置可视化效果来动态重设大小,请在仪表板的可视化效果设置中启用“动态调整面板高度”。 有关详细信息,请参阅表格。
如果你有权访问同一帐户中的多个工作区,则可在 Databricks SQL 中切换工作区。 在 Azure Databricks 工作的左下角,单击
,然后选择一个工作区来切换到它。
2021 年 8 月 12 日
- 管理员现可在执行其他用户的查询时终止该查询。 有关详细信息,请参阅终止正在执行的查询。
2021 年 8 月 5 日
- 改进了
EXPLAIN结果格式- Explain 结果更易于读取
- 已格式化为等宽,无换行
2021 年 7 月 29 日
- 通过在查询编辑器中支持多个选项卡,同时处理多个查询变得更容易。 若要启用选项卡式编辑器,请参阅启用和禁用选项卡式编辑器。 若要使用选项卡式编辑器,请参阅编辑多个查询。
2021 年 7 月 8 日
- 仪表板中的可视化小组件现提供标题和说明,便于你针对仪表板本身定制在多个仪表板中使用的可视化标题和说明。
- 已更新边栏,改进了其可见性和导航:
- “仓库”现为“SQL 终结点”,“历史记录”已重命名为“查询历史记录”。
- 帐户设置(旧称为“用户”)已移至
“帐户”。 选择“帐户”时,可更改 Azure Databricks 工作区并注销。 - 用户设置已移至
“设置”,并已被拆分为“用户设置”和“SQL 管理控制台”。 SQL 管理控制台仅对管理员可见。 - 帮助图标更改为了
“帮助”。
2021 年 7 月 1 日
- 使用新的数据资源管理器,可以轻松浏览和管理对数据库和表的权限。 用户可以查看架构详细信息,预览示例数据,还可查看表详细信息和属性。 管理员可以查看和更改数据对象所有者,数据对象所有者可以授予和撤销权限。 有关详细信息,请参阅数据资源管理器。
- 水平图表中的 Y 轴已更新,以反映与表中相同的顺序。 如果此前选择了反向排序,可以使用 Y 轴上选项卡的“反转顺序”开关来反转新排序。
2021 年 6 月 23 日
- 轻松配置 SQL 终结点中的服务主体。 现有一个控件可帮助你在全局 SQL 终结点设置中配置服务主体。 请参阅配置服务主体。
- 现在支持临时视图。
2021 年 6 月 17 日
- 对于新创建的 SQL 终结点(包括 UI 和 REST API),现在默认打开 Databricks 的新矢量化执行引擎 Photon。 Photon 透明地加速
- 写入 Parquet 和 Delta 表。
- 许多 SQL 查询。 请参阅限制。
- 使用
CREATE GROUP、DROP GROUP、ALTER GROUP、SHOW GROUPS和SHOW USERS命令轻松管理用户和组。 有关详细信息,请参阅 Security 语句和 Show 语句。 - 对于具有超过 100 个表的数据库,查询编辑器架构浏览器更贴合,也更快捷。 在此类数据库上,架构浏览器不会自动加载所有列;仍照常显示表列表,但仅在单击表时加载列。 此更改会影响查询编辑器中的查询自动完成,因为它依赖于此信息来显示建议。 在展开表并加载其列之前,这些建议不可用。
2021 年 6 月 3 日
- 新启用的 Azure Databricks 工作区的管理员现在默认接收 Databricks SQL 权利,不再需要使用管理控制台向其自己授予 Databricks SQL 访问权限。
- Photon 现在以公共预览版提供,默认为新的 SQL 终结点启用。
- 多群集负载均衡现在以公共预览版提供。
- 现在,可以使用“可编辑”权限实现与组织的其他成员协作处理仪表板和查询。 请参阅仪表板访问控制和查询访问控制。
2021 年 5 月 26 日
- SQL 分析已重命名为 Databricks SQL。 此更改具有以下面向客户的影响:
Web UI 中的引用已更新。
已重命名授予 Databricks SQL 访问权限的权利:
- UI:Databricks SQL 访问权限(以前称为 SQL Analytics 访问权限)
- SCIM API:(以前称为
sql-analytics-access)
具有旧权利的用户、组和服务主体已迁移到新权利。
与 Databricks SQL 相关的审核日志标记已更改:
- Databricks 事件SQL前缀现为
databrickssql。 changeSqlAnalyticsAcl现为changeDatabricksSqlAcl。
- Databricks 事件SQL前缀现为
- 仪表板更新
- 仪表板导出文件名已更新为仪表板的名称 + 时间戳,而不是 UUID。
- 导出记录限制已从 22k 提升至 64k。
2021 年 5 月 20 日
现在,可以使用 Azure Key Vault 中你自己的密钥来加密存储在 Azure Databricks 中的 SQL 查询和 Databricks 查询历史记录。 如果已配置自己的工作区密钥来加密托管服务的数据(笔记本和机密),则无需执行进一步操作。 用于托管服务的客户管理的密钥现在还加密 Databricks SQL 查询和查询历史记录。 请参阅为托管服务启用客户管理的密钥。 此更改仅影响存储在其他位置的新数据。 今天之前存储的 Databricks SQL 查询和查询历史记录不一定使用此密钥进行加密。
Databricks SQL 查询结果存储在根 Azure Blob 存储实例中,该实例由 Azure Databricks 在工作区设置过程中创建,不由你的托管服务密钥加密。 但是,你可以使用自己的密钥来加密它们。 请参阅为 DBFS 根配置客户管理的密钥。
此功能在高级计划中提供。
“过去的执行”选项卡现在显示相对时间。
2021 年 5 月 13 日
Databricks SQL 不再尝试猜测列类型。 以前,即使采用
xxxx-yy-dd格式的列是标识代码,系统也将它当做日期处理。 而现在,系统不再将此列自动看做是日期。 如果需要,必须在查询中指定它。 此更改可能导致某些依赖先前行为的可视化效果失效。 在此版本中,可通过更改
>“设置”>“向后兼容性”选项,返回到之前的行为。 在未来版本中,我们将删除此功能。查询编辑器现在有一个查询进度指示器。 状态更改现显示在不断更新的进度栏中。

2021 年 5 月 6 日
- 现可以 PDF 格式下载仪表板的内容。 请查看以 PDF 格式下载。
- 管理员用户现可查看对所有查询和仪表板的访问权限。 在此视图中,管理员可查看和删除任何查询或仪表板。 但是,如果查询或仪表板未与管理员共享,则该管理员无法编辑它们。请查看查询管理员视图和仪表板管理员视图。
- 现可对所有帐户使用多租户负载均衡增加终结点并发。 可创建在指定的最小群集计数和最大群集计数之间自动缩放的终结点。 负载过多的终结点将纵向扩展,负载不足的终结点将纵向缩减。
2021 年 4 月 29 日
- 查询选项和详细信息现在组织为查询编辑器左侧的一组选项卡:
2021 年 4 月 22 日
- 修复了因内部错误似乎删除了终结点而导致其无法访问的问题。
2021 年 4 月 16 日
Databricks SQL 保持了与 Apache Spark SQL 语义的兼容性。 此版本更新了语义以匹配 Apache Spark 3.1 的语义。 之前的 Databricks SQL 语义与 Apache Spark 3.0 的语义匹配。
- 统计聚合函数(包括
std、stddev、stddev_samp、variance、var_samp、skewness、kurtosis、covar_samp和corr)在表达式求值期间发生DivideByZero时(例如,stddev_samp应用于单个元素集时)会返回NULL而不是Double.NaN。 在此版本之前,会返回Double.NaN。 grouping_id()返回长值。 在此版本之前,此函数返回 int 值。- 查询计划解释结果现已设置格式。
- 如果指定的日期/时间模式无效,
from_unixtime、unix_timestamp、to_unix_timestamp、to_timestamp和to_date将失败。 在此版本之前,会返回NULL。 - 如果 Parquet、ORC、Avro 和 JSON 数据源在顶级列以及嵌套结构中检测到重复名称,会引发异常
org.apache.spark.sql.AnalysisException:“在读取的数据架构中发现重复列。” - 在将结构和映射强制转换为字符串时,会用
{}括号将它们括起来。 例如,show()操作和CAST表达式会使用此类括号。在此版本之前,是使用 d 括号来实现此用途。 - 在将结构、数组和映射的 NULL 元素强制转换为字符串时,会将其转换为“null”。 在此版本之前,会将
NULL元素转换为空字符串。 - 对 decimal 类型列的溢出求和会返回 null。 在此版本之前,在这种情况下,对 decimal 类型的列求和可能会返回 null 或不正确的结果,甚至会在运行时失败(具体取决于实际的查询计划执行情况)。
- 对于不完整的间隔文本(例如无效的
INTERVAL '1'、INTERVAL '1 DAY 2'),将返回IllegalArgumentException。 在此版本之前,这些文本会生成 Null。 - 如果时间戳早于
1900-01-01 00:00:00Z且加载(保存)为INT96类型,则从和向 Parquet 文件加载和保存时间戳将失败。 在此版本之前,这些操作不会失败,但可能会因为变基而导致输入的时间戳在公历和前公历之前转换。 schema_of_json和schema_of_csv函数以 SQL 格式返回架构,其中字段名称会用引号引起来。 在此版本之前,函数会返回一个目录字符串,其中字段不带引号并采用小写形式。- 表架构中支持
CHAR、CHARACTER和VARCHAR类型。 表扫描和插入遵循 char/varchar 语义。 如果将 char/varchar 用于表架构以外的地方,会引发异常(CAST 是一种异常,会直接将 char/varchar 视为类似于之前的字符串)。 - 对于来自 Hive 外部目录的表,将引发以下异常:
- 如果已存在新分区,
ALTER TABLE .. ADD PARTITION会引发PartitionsAlreadyExistException。 - 如果不存在现有分区,
ALTER TABLE .. DROP PARTITION会引发NoSuchPartitionsException。
- 如果已存在新分区,
2021 年 4 月 13 日
- 使用 SQL 终结点排队提高了查询吞吐量。 现在,当正在运行的查询已使 SQL 终结点达到饱和时,提交到该终结点的查询会排队。 这使终结点不因请求过载,从而提高查询吞吐量。 可在终结点监视屏幕中查看改进后的性能。
2021 年 4 月 1 日
- 在查询历史记录中快速查找查询的编译、执行和结果提取所花费的时间。 请参阅查询配置文件。 之前,只能单击查询,再打开“执行详细信息”选项卡来查看此信息。
- SQL 终结点不再扩展到超出指定的最大群集数。 分配给 SQL 终结点的所有群集都将 24 小时后被回收,这使得有短暂的时间存在一个额外的群集。
2021 年 3 月 18 日
- 查询编辑器中的“自动完成”功能现支持 Databricks SQL 语法,并可感知上下文和别名。 请查看构造查询。
- 当会话在服务器上超时后,JDBC 和 ODBC 请求不再失败并显示“会话无效”错误。 如果会话超时,BI 客户端现可无缝恢复。
2021 年 3 月 11 日
- 为 Databricks SQL 功能新启用的工作区中的管理员和用户不再自动有权访问 Databricks SQL 功能。 若要实现对 Databricks SQL 功能的访问,管理员必须:
- 转到管理控制台。
- 单击“用户” 选项卡。
- 在其帐户所在行中,单击“Databricks SQL 访问权限”复选框。
- 单击“确认” 。
- 重复步骤 3 和 4,向用户授予访问 Databricks SQL 功能的权限,或者按照向组授予访问 Databricks SQL 功能的权限中的说明向组授予访问权限。
- 只需在侧栏顶部选择
创建 > [查询 | 仪表板| 警报],即可轻松创建查询、仪表板和警报。 - 查询编辑器现会保存草稿,且你可还原到已保存的查询。 请查看还原到已保存的查询。
- 你无法再创建外部数据源。
- SQL 终结点监视图表的可靠性得到了提高。 该图表不再间歇性显示误报的错误消息。
2021 年 3 月 4 日
- 查询和仪表板 API 文档现已发布。 请参阅查询和仪表板 API 2.0。
- 现在会始终执行计划的仪表板刷新。 该刷新在 Web 应用中执行,因此无需在浏览器中保持仪表板打开。 请参阅自动刷新仪表板。
- 使用 SQL 仓库 API 创建的新 SQL 终结点现在启用了“自动停止”,并设置了 2 小时的默认超时。
- Tableau Online 用户现在可以连接到 SQL 终结点。 请参阅新的 Tableau Online 快速入门。
2021 年 2 月 26 日
用于 Azure Databricks 的新 Power BI 连接器在 2020 年 9 月发布了公开预览版,现已推出 GA 版。 提供以下功能:
- 简单的连接配置:新的 Power BI Azure Databricks 连接器已集成到 Power BI 中,你只需要单击几下鼠标,即可使用简单的对话框对其进行配置。
- 基于 Azure Active Directory 凭据进行身份验证,管理员无需再配置 PAT 令牌。
- 由于新的 Azure Databricks ODBC 驱动程序提供了显著的性能改进,因此导入操作和优化的元数据调用操作速度更快。
- 通过 Power BI 访问 Azure Databricks 数据时,将遵守 Azure Databricks 表访问控制以及与你的 Azure AD 标识关联的 Azure 存储帐户权限。
有关详细信息,请参阅 Power BI。
2021 年 2 月 25 日
- 在 SQL 终结点上设置权限的速度现在更快。 创建新 SQL 终结点后需执行此步骤,编辑现有终结点时也可轻松执行此步骤。 请参阅创建 SQL 仓库和 SQL 仓库访问控制。
- 若要重复使用可视化效果设置,现在可以复制可视化效果。 请参阅克隆可视化效果。
- 查询结果存储在你的帐户中,而不是 Azure Databricks 帐户中。
- 若要通过列出对象的所有定义权限来防止信息泄露,必须具有以下身份才能运行
SHOW GRANTS [<user>] <object>:- Databricks SQL 管理员或
<object>的所有者。 [<user>]中指定的用户。
- Databricks SQL 管理员或
2021 年 1 月 7 日
- 为了减少对空闲终结点的支出,新的 SQL 终结点现已启用“自动停止”,默认超时为 2 小时。 达到超时值后,终结点将停止。 你可随时编辑超时期限或禁用“自动停止”。
- 除了
TEXT类型的查询参数,将不再向查询参数添加引号。 如果已使用Dropdown List、Query Based Dropdown List或任意Date类型的查询参数,则必须添加引号才能运行查询。 例如,如果查询是SELECT {{ d }},则现在此查询必须为SELECT '{{ d }}'。
2020 年 11 月 18 日
Databricks 很高兴地推出 Databricks SQL 公共预览版(一个直观的环境,可用于运行临时查询和基于数据湖中存储的数据创建仪表板)。 Databricks SQL 让组织能够运行多云 lakehouse 体系结构,该体系结构可提供数据仓库性能,且具有 Data Lake 经济性。 Databricks SQL:
- 与当前使用的 BI 工具(例如 Tableau 和 Microsoft Power BI)集成,查询数据湖中最完整和最新的数据。
- 使用 SQL 原生接口对现有 BI 工具进行补充,该接口支持数据分析师和数据科学家直接在 Azure Databricks 中查询数据湖数据。
- 支持通过丰富的可视化效果和拖放式仪表板共享查询见解,以及自动在重要数据发生更改时发出警报。
- 使用什么是 Databricks SQL 仓库?为数据湖引入可靠性、质量、缩放、安全性和性能,以便用户使用最新和最完整的数据来运行常规的分析工作负载。
- 引入了
USAGE特权,以简化数据访问管理。 为了使用数据库中的对象,除了执行该操作所需的所有特权以外,还必须获得该数据库的 USAGE 特权。 可以将USAGE特权授予数据库或目录。 对于已使用表访问控制的工作区,USAGE特权会自动授予给根CATALOG上的用户组。 有关详细信息,请参阅数据访问控制。
有关详细信息,请参阅 Databricks SQL 指南。 请联系 Databricks 代表,以申请访问权限。
修复的问题
- SQL 编辑器。 在查询选项卡之间切换时,SQL 编辑器现在将保留所选文本和滚动位置。
- SQL 编辑器。 如果在 SQL 编辑器中针对某个查询单击“运行”,然后导航到另一个页面并在查询仍在执行时返回,则编辑器将显示正确的查询状态。 如果查询在你位于另一个页面时完成,则在返回到 SQL 编辑器页面时,查询结果将可用。
- 现在可以使用 MySQL 8.0 作为外部元存储。
- Delta 表上的
DESCRIBE DETAIL命令不再失败并产生java.lang.ClassCastException: java.sql.Timestamp cannot be cast to java.time.Instant. - 读取具有
INT96时间戳的 Parquet 文件不再失败。 - 用户具有针对查询的“可运行”权限并运行该查询时,如果该查询是由另一个用户创建的,则查询历史记录会将该查询的运行者显示为用户。
- 呈现图表时,现在忽略 Null 值,从而提高图表的可用性。 例如,以前,存在 null 值时,条形图中的条形看起来非常小。 现在,轴仅基于非 null 值进行设置。
已知问题
- 从多群集负载均衡 SQL 终结点中的 Delta Lake 以外的数据源中读取的内容可能不一致。
- 在 Databricks SQL 中访问的 Delta 表将其架构和表属性上传到配置的元存储。 如果使用的是外部元存储,则可以在元存储中查看 Delta Lake 信息。 Delta Lake 会尽最大努力使这些信息保持最新状态。 也可使用
DESCRIBE <table>命令来确保元存储中的信息已更新。 - Databricks SQL 不支持将“GMT+8”等区域偏移作为会话时区。 变通方法是改用基于区域的时区 https://en.wikipedia.org/wiki/List_of_tz_database_time_zones),如“Etc/GMT+8”。 有关设置时区的详细信息,请参阅 SET TIME ZONE。
常见问题解答 (FAQ)
- Databricks SQL 工作负载如何计费?
- SQL 终结点在何处运行?
- 能否从“数据科学与工程”工作区 SQL 笔记本使用 SQL 终结点?
- 我已使用云提供商凭据授予了对数据的访问权限。 为什么无法在 Databricks SQL 中访问此数据?
Databricks SQL 工作负载如何计费?
Databricks SQL 工作负载按标准作业计算 SKU 收费。
SQL 终结点在何处运行?
与 Azure Databricks 群集一样,SQL 终结点也要在 Azure 帐户中进行创建和管理。 SQL 终结点在你的帐户中自动管理 SQL 优化的群集,并根据最终用户需求进行缩放。
能否从“数据科学与工程”工作区 SQL 笔记本使用 SQL 终结点?
否。 可以从 Databricks SQL 查询BI 工具和其他 JDBC 和 ODBC 客户端使用 SQL 终结点。
我已使用云提供商凭据授予了对数据的访问权限。 为什么无法在 Databricks SQL 中访问此数据?
在 Databricks SQL 中,对数据的所有访问都受限于数据访问控制,管理员或数据所有者必须首先授予你适当的权限。


