最大程度地提高性能,提高速度和效率

已完成

SQL Server 2025 包括对查询处理和性能优化的改进。 本单元介绍查询处理功能、资源治理和维护功能。

使用 IQP 优化查询处理

SQL Server 2025 通过将传统计划优化与 AI 驱动的见解和对新式数据类型的支持相结合,将 智能查询处理(IQP) 提升到下一级别。 这些增强功能使引擎能够动态适应工作负荷模式、优化涉及 JSON 和 RegEx 的查询,甚至使用机器学习微调执行策略。 对于开发人员和 DBA,这意味着查询速度更快、并发性更好,以及实时分析和半结构化数据的性能提高,所有这些都无需手动优化。

查询处理器根据工作负荷模式和系统资源优化执行计划。 重要改进包括:

功能 / 特点 Description 益处
优化锁定 增强的并发控制机制 改进了多用户访问
万圣节保护 简化的更新/删除操作 减少了修改开销
计划重用 更好的“sp_executesql”实现 更一致的动态 SQL 性能
自适应执行 运行时计划调整 不同数据的最佳性能
可选参数计划优化 (OPPO) 根据 NULL 与 NOT NULL 参数在运行时选择最佳计划 使用可选参数提高查询的性能
表达式的基数估计 (CE) 反馈 从以前的执行中学习,以改进对重复表达式的基数估计。 更准确的估计,更好的计划选择
OPTIMIZED_SP_EXECUTESQL 通过将sp_executesql的处理方式类比为存储过程,从而减少编译风暴的发生。 在大量查询负载下提高稳定性和性能

使用查询存储监控性能

查询存储 有助于跟踪一段时间内的查询性能并检测回归问题。

SQL Server 2025 中的查询存储功能包括:

  • 次要副本的性能监控

    • 跟踪可读取的辅助副本上的查询性能
    • 对 AlwaysOn 可用性组的支持
    • 分布式环境中的一致监视
  • 自动查询优化

    • 检测和更正查询回归
    • 基于查询模式的索引建议
    • 计划改进建议
  • 分布式工作负荷见解

    • 跨数据库查询监控
    • 跨副本的性能跟踪
    • 资源使用情况分析

小窍门

在最活跃的数据库上启用查询存储,以生成性能基线并确定优化机会。

实现高级查询功能

SQL Server 2025 使高级查询功能简单而强大。 这些增强功能包括参数敏感计划优化、基数估计反馈、自适应并行度以及分析批处理模式改进。 开发人员还可以使用可选的参数计划和新的查询提示获得更精细的控制,从而减少手动干预,同时确保查询在各种工作负荷中高效运行。

使用这些功能解决数据库应用程序中的特定性能方案。

SQL Server 2025 包含以下查询处理改进:

  • 参数敏感计划(PSP)优化: 根据参数值模式自动创建和维护多个执行计划,提高具有不同参数值的查询的性能
  • 默认情况下,并行度(DOP)反馈: 根据历史查询性能自动调整并行执行设置,优化资源利用率
  • 分析的批处理模式优化: 通过改进矢量化作和内存效率增强分析查询性能
  • 可选参数计划优化: 为具有可选参数的查询生成高效的执行计划,从而减少动态 SQL 的需求
  • ABORT_QUERY_EXECUTION查询提示: 提供对查询执行的精细化控制,允许故意终止特定操作。

管理资源和维护

旨在提高可靠性、速度和易于维护的新功能,同时为 DBA 提供更多控制和减少手动工作。 这些功能使 DBA 能够更好地控制系统资源、自动执行例行任务,并最大限度地减少意外事件期间的停机时间。

这些功能共同为新式数据环境提供更高的效率和复原能力。

  • Tempdb 空间资源治理: 控制并限制每个工作负荷组的 tempdb 空间使用量,防止失控查询消耗过多的临时存储
  • tempdb 中的加速数据库恢复 (ADR): 意外关闭后快速恢复 tempdb,减少数据库停机时间并提高系统可用性
  • 支持 Linux 中的 tempdb: 在 Linux 中使用内存支持的临时文件系统来提高 tempdb 性能和降低 I/O 延迟
  • 列存储索引维护改进: 改进了列存储索引的维护作,包括更好的压缩和更高效的段消除
  • 自动更改跟踪清理: 自动维护更改跟踪表,减少手动开销并确保最佳性能
  • 从数据库中移除内存中 OLTP:简化了在不再需要时从数据库中移除内存优化表和本机编译模块的过程