SQL Server查询存储怎样做,SQL语句怎样写
Admin 2022-07-28 群英技术资讯 277 次浏览
介绍一个SQL Server 2016后新增的功能:查询存储。查询存储的工作原理类似于飞行数据记录器或者黑匣子,不断地收集与查询和计划相关的编译和运行时信息,包括已执行查询的历史记录,查询运行时执行统计信息,针对执行计划的执行计划等。与查询相关的数据将永久保存在内部表中,并通过一组视图向用户显示。通过这些信息,可以快速查找性能差异,识别由查询计划更改和故障排除引起的性能等等问题。
通过以下命令或者SSMS界面进行开启
ALTER DATABASE [DatabaseOne] SET QUERY_STORE = ON;
官方对内部对应的一些表,详细描述如下
查看 |
说明 |
sys.query_store_query_text |
提供对数据库执行的唯一查询文本。 将忽略查询文本之前和之后的注释和空格。 不忽略文本内部的注释和空格。 批中每个语句都会生成单独的查询文本项。 |
sys.query_context_settings |
显示执行查询所依据的影响计划的设置的非重复组合。 由于 context_settings_id 是查询键的一部分,因此采用影响计划的不同设置执行的相同查询文本将在查询存储中生成单独的查询条目。 |
sys.query_store_query |
在查询存储中单独进行跟踪和强制执行的查询条目。 如果查询文本在不同的上下文设置下执行,或在不同的 Transact-SQL 模块(例如,存储过程和触发器等)内外执行,则可以产生多个查询条目。 |
sys.query_store_plan |
显示具有编译时间统计信息的查询估计计划。 存储计划相当于一个可以通过使用 SET SHOWPLAN_XML ON 获取的计划。 |
sys.query_store_runtime_stats_interval |
查询存储将时间划分为自动生成的时间窗口(间隔),并根据每个执行计划的间隔存储聚合的统计信息。 间隔大小由(位于 Management Studio 中)的配置选项“统计信息收集间隔”或由使用 ALTER DATABASE SET Options (Transact-SQL) 的 INTERVAL_LENGTH_MINUTES 进行控制。 |
sys.query_store_runtime_stats |
执行计划的聚合运行时统计信息。 所有捕获的指标都以 4 种统计函数的形式表示:平均值、最小值、最大值、标准偏差。 |
当然,这种类似的节点信息收集的东西,其实并不适合查询频率过大的查询,经过非严谨测试,性能损耗大概在5%左右。
做过DB性能优化的人应该都知道,以前我们要么通过持续性的日志记录分析,要么通过实时的监控去找到对应的性能瓶颈,包括CPU、内存、IO等,查询存储其实就是在此基础上更进一步,把我们关心的点都存储起来,并且有更详尽信息和标准分析报告,相当省事。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章介绍了SQL Server中的格式转换函数Cast、Convert,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍SQL语句执行顺序的内容,对新手学习SQL server有一定的帮助,感兴趣的朋友可以参考下,希望大家阅读完这篇文章能有所收获,接下来小编带着大家一起了解看看。
这篇文章主要介绍了SqlServer使用 case when 解决多条件模糊查询问题 的相关资料,需要的朋友可以参考下
SQL IN 运算符允许您在 WHERE 子句中指定多个值。IN 运算符是多个 OR 条件的简写。有不少朋友对于SQL IN运算符比较感兴趣,下面小编给大家整理和分享了相关知识和资料,易于大家学习和理解,有需要的朋友可以借鉴参考,下面我们一起来了解一下吧。
这篇文章介绍了SQL Server中的事务用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008