随笔分类 -  SQL Server--统计

杂谈--从基数评估来看问题1
摘要:前段时间遇到很多例统计信息更新不及时导致执行计划较差引发性能问题的情况,现在总结分析下,与各位分享。问题描述:订单表用于存放用户订单信息,其中有字段DT存放订单的创建时间,PID存放用户编号,根据业务需求,我们分别创建在列DT上索引IDX_DT,在PID上创建索引IDX_PID,我们通常会在业务低峰... 阅读全文

posted @ 2014-12-10 18:27 笑东风 阅读(458) 评论(2) 推荐(1) 编辑

统计--VARCHAR与NVARCHAR在统计预估上的区别
摘要:最近遇到一个问题,当查询使用到模糊查询时,由于预估返回行数过高,执行计划认为索引查找+Key Lookup的成本过高,因此采用Clustered Index Scan的方式,消耗大量逻辑IO,执行计划较差。经过测试,发现对于模糊查询,NVARCHAR和VARCHAR的预估返回行数差距很大,因此拿出来... 阅读全文

posted @ 2014-11-18 00:36 笑东风 阅读(731) 评论(5) 推荐(1) 编辑

统计--过滤(筛选)索引的统计信息过期问题测试2
摘要:在上次的文章统计--过滤(筛选)索引的统计信息过期问题测试中,遗留一个问题,当更新行数满足统计自动更新条件是,什么样的查询会触发自动更新呢?受林勇桦的指点,找到以下2个跟踪标志:9204 – 打印出被加载的统计信息(With this enabled, we get a report of stat... 阅读全文

posted @ 2014-11-08 12:00 笑东风 阅读(702) 评论(0) 推荐(1) 编辑

统计--过滤(筛选)索引的统计信息过期问题测试
摘要:基础知识普及:对于筛选索引,MSDN如是说:筛选索引是一种经过优化的非聚集索引,尤其适用于涵盖从定义完善的数据子集中选择数据的查询。 筛选索引使用筛选谓词对表中的部分行进行索引。 与全表索引相比,设计良好的筛选索引可以提高查询性能、减少索引维护开销并可降低索引存储开销。筛选索引与全表索引相比具有以下... 阅读全文

posted @ 2014-10-25 23:11 笑东风 阅读(1257) 评论(3) 推荐(2) 编辑

统计--追踪数据更新情况
摘要:背景: 在统计自动更新设置为ON时(默认设置),当更新次数达到一定阀值后便会触发自动更新。本文通过一些测试来探究SQL SERVER 如何追踪数据更新情况和如何计算更新次数。--==========================================--可以使用以下系统表来查看列变化情况... 阅读全文

posted @ 2014-02-18 12:04 笑东风 阅读(483) 评论(0) 推荐(0) 编辑

统计--自动更新统计
摘要:当数据库设置为自动更新统计后,SQL Server 监控表中的数据更改,当更改满足一下条件之一时更新:1.向空表插入数据时 2.少于500行的表增加500行或者更多 3.当表中行多于500行时,数据的变化量大于20%时 (在SQL SERVER 2000中,指的是20%的行被修改,而在SQL SERVER 2005/2008中,指的是20%的列数据被修改)​可以手动使用UPDATE STATISTICS 或EXEC sys.sp_updatestats来更新统计UPDATE STATISTICS 需要锁表UPDATE STATISTICS table_or_indexed_view_name 阅读全文

posted @ 2014-02-18 11:57 笑东风 阅读(3171) 评论(0) 推荐(0) 编辑

导航

点击右上角即可分享
微信分享提示