Fabric Data Warehouse查询加速是一种GPU加速功能,旨在提升Microsoft Fabric Data Warehouse中分析SQL工作负载的性能和效率。
查询加速通过将计算密集型工作交给专门的GPU加速执行引擎,智能地加速符合条件的SQL操作。 诸如连接、聚合和扫描等操作可以更高效、更大规模地处理,提供更快且更可预测的性能,同时保持与现有T-SQL工作负载的完全兼容。
Note
该功能仅限时预览。 如需先到先得申请访问,请填写 查询加速注册表。
为什么要启用查询加速?
现代和人工智能驱动的分析工作负载对数据仓库引擎施加了越来越大的压力。 随着数据量、查询复杂度和并发性的增加,连接和聚合等操作可能成为性能瓶颈。
查询加速通过以下方式解决这些挑战:
- 减少计算密集型操作的查询执行时间。
- 提高分析工作负载的吞吐量。
- 提升并发需求下的绩效一致性。
- 实现了报告、应用和AI驱动场景的快速分析。
查询加速不会给开发者或管理员带来额外工作:
- 没有查询重写
- 没有模式更改
- 没有重新格式化
- 无数据移动
- 无需管理额外的基础设施
Fabric Data Warehouse 中查询加速的用例
查询加速设计用于分析工作负载,这些工作负载对性能、规模和并发性至关重要。 运行商业智能、应用分析和人工智能驱动的分析工作负载的客户通常受益最大,尤其是在数据量和并发查询活动增加时。
查询加速特别适合以下工作负载:
- 扫描并处理大量数据。
- 在大型数据集上执行复杂连接。
- 对大型结果集执行聚合和分析计算。
- 支持高并发环境,多个用户、应用程序或 AI 代理同时发出查询。
- 为交互式分析、仪表盘、报告和低延迟重要的运营应用提供动力。
查询加速的工作原理
查询加速自动提升了Fabric Data Warehouse中合格分析工作负载的执行效率。
提交查询时:
- Fabric Data Warehouse分析查询计划,识别可从加速执行中受益的操作。
- 仓库将符合条件的操作卸载给GPU加速的执行引擎,该引擎作为协处理器与CPU同属同一计算节点。
- GPU和CPU共同执行查询计划,并通过相同的T-SQL接口和用户体验返回结果。
这种方法能提供更快、更可预测的查询性能,无需更改现有查询、应用或数据模型。
性能预期
实际的性能提升取决于工作负载特性、查询形态、数据分布和操作员资格。 查询加速并不保证不同工作负载的性能提升完全一致。 影响加速度的因素包括:
| 因子 | Impact |
|---|---|
| 数据卷 | 处理较大数据集(通常可达1TB)的查询最有可能受益于加速。 |
| 查询形状 | 查询加速设计用于大量阅读的分析工作负载。 扫描、连接和聚合等操作可以从加速中受益,而写入操作则不行。 |
| Concurrency | 拥有大量并发查询的工作负载可以从更高的吞吐量和更可预测的性能中受益。 |
查询加速的查询资格
并非所有查询或操作符都符合加速资格。 查询资格取决于查询的特性和所处理的数据。
查询不符合查询加速的最常见原因包括:
nvarchar 数据类型使用
- 查询加速目前对 nvarchar 的支持有限。 在可能的情况下,使用 varchar(8000) 代替 nvarchar ,以最大化查询资格。
大小写不区分的排序
- 查询加速目前对 大小写不相关的整合支持有限。 在可能的情况下,使用 大小写区分的汇总 以最大化查询资格。
如何加入查询加速预览
为了确保高质量的预览体验,Microsoft正在逐步推出查询加速功能。 申请访问的客户将按先到先得原则入职。
客户可通过填写注册表申请访问: 查询加速注册表。
Microsoft批准您的访问请求后,您将收到一封邮件,确认租户可以使用查询加速功能。
启用查询加速:
- 确保你的 Fabric 容量位于支持区域内。
- 进入你的工作区。
- 打开 工作区设置。
- 在 Fabric 仓库中,选择查询加速。
- 开启 查询加速 开关。
Important
启用或禁用查询加速会取消工作区中当前运行的任何查询。 在活动量低的时候做出改变。
启用查询加速后,它会自动应用于工作空间中所有 Fabric 数据仓库和 SQL 分析端点的合格 T-SQL 查询。 现有的查询、应用程序、报告和数据模型都能在不修改的情况下继续正常工作。
区域支持
在当前预览中,Fabric Data Warehouse的查询加速仅在以下区域的容量内提供:
- 美国:东美国、东美国2和南中部美国
- 东南亚
- 德国中西部
支持区域外的客户需要在支持区域内创建 Fabric 容量。
查询加速的监控与可观察性
利用以下监控经验来判断查询加速是否适用于查询。
监控 Fabric 门户中的查询加速
- 在 Fabric 门户的监控页面,进入查询历史,查看查询加速栏。 该列显示加速是否被应用到特定查询。 如果没有应用加速,要么是查询加速被禁用,要么查询不符合加速资格。
- 在 长期查询中,查看 加速运行次数 指标。 该指标显示了对查询施加加速度的次数。
- 在 “频繁运行查询”中,请查看 加速运行次数 指标。 该指标显示查询随时间加速执行的总数。
通过使用查询洞察视图监控查询加速
你可以在 查询洞察视图 中写 T-SQL 查询,以确定查询执行时是否启用了查询加速,以及该查询是否被应用了加速。 在你的仓库里,在 “Schemas”、“ queryinsights”、“ Views”下找到查询洞察视图。
以下查询洞察视图包含查询加速信息:
queryinsights.exec_requests_history- 查看
is_accelerated列。 -
1表示查询加速已应用到查询。-
0表示查询加速未被应用。 如果没有应用加速,要么是查询加速被禁用,要么查询不符合加速资格。
-
- 查看
queryinsights.long_running_queries- 查看
number_of_accelerated_runs列。 - 该值表示应用查询加速的总执行次数。
- 查看
queryinsights.frequently_run_queries- 查看
number_of_accelerated_runs列。 - 该值表示应用查询加速的总执行次数。
- 查看
利用这些视图验证查询加速是否被应用,并了解仓库中加速模式随时间的变化。
查看执行计划中的查询加速
您可以使用 SQL Server Management Studio(SSMS)检查查询执行计划,包括查询加速操作符和执行细节。 图形化查询计划可以帮助你理解查询是如何执行的,并识别查询计划中哪些部分被加速了。
当符合条件的查询启用并激活查询加速时,加速查询在计划中会显示一个特殊的 查询加速 操作符。
要查看图形化执行计划,请参见:
查询加速是如何计费的?
查询加速采用与 Fabric 其他部分相同的商业模式,并以容量单位(CU)计费。
查询加速使用一个独立的计量器。 该计量表消耗的CU速率高于基线Fabric Data Warehouse工作负载。 只有在启用查询加速时才会支付此费用。 启用后,所有查询都通过查询加速计费。 更多信息请参阅 Fabric Data Warehouse 中的计费与利用报告和如何观察Fabric Data Warehouse利用趋势。