Week 9: Plan Caching 这三个查询将会编译成不同的查询计划, 因为包含了一个hard-coded的参数值. 因此, 这三个查询计划都被放进了缓存中, 我们称之为 缓存污染. 因为Hard-coded的原因, 这些查询计划很难被重用, 浪费了宝贵的缓存空间. Read More
posted @ 2016-03-23 16:28 AlphaQcode Views(179) Comments(0) Diggs(0) Edit
Week 9: Understanding Execution Plans Why Execution Plans? 许多人会问什么在SQL Server里需要执行计划, 首先我们来讲下SQL语言,也就是T-SQL. t-sql是一种声明语言. 我们用逻辑的方式来描述我们想要返回哪些数据... Read More
posted @ 2016-01-04 16:49 AlphaQcode Views(162) Comments(0) Diggs(0) Edit
Week 8: Covering Indexes & Tipping Point 当我们需要根据非聚集索引的字段作为条件来检索数据, 但返回的字段又不包含在非聚集索引中. 这种情况, 需要走两遍索引(一遍非聚集,一遍聚集),有时候这样做并不是很有效率,我们可以用Covering Index(包含索... Read More
posted @ 2016-01-04 15:58 AlphaQcode Views(169) Comments(0) Diggs(0) Edit
Week 7: Non-Clustered Indexes 上周谈论的是聚集索引,当我们在一个表上定义一个聚集索引,就等于使用索引列来物理排序表. 除此之外,我们还可以在表上创建多个(最高999)非聚集索引. 我们用字典来比喻一下, 字典是按照拼音字母物理排序的(聚集索引), 当我们不知道某个字... Read More
posted @ 2016-01-04 12:12 AlphaQcode Views(164) Comments(0) Diggs(0) Edit
SQL Passion Week 6: 聚集索引 每次我们给表创建主键(Primary key)时, 默认等于一个唯一聚集索引(Unique Clustered Index). 即表示主键所包含的column是唯一的,不重复的, 同时表的物理排序也是按照主键的顺序来排列的. 同样的, 我们也列举下... Read More
posted @ 2015-11-26 17:37 AlphaQcode Views(166) Comments(0) Diggs(0) Edit
SQL Passion Week 5: 堆表 今天我们介绍下所谓的堆表(Heap table), 堆表就是没有聚集索引的表. 在SQL Server中,一个表如果包含聚集索引, 我们就称为索引表, 否则就称为堆表. 在堆表中, 数据是无序的, 它们只是杂乱的放在一起, 没有结构性. 当我们sel... Read More
posted @ 2015-11-23 16:54 AlphaQcode Views(214) Comments(0) Diggs(0) Edit
SQL Passion Week 4: 数据页的限制 在week2的时候我们知道了数据页是8kb的大小,可以存储8060 bytes的数据. 单条记录的长度决定了一个页上能存储多少条记录. 当我们处理固定长度类型字段(char,int,datetime等)时, 有一个限制就是总长度不能超过8060... Read More
posted @ 2015-11-23 15:43 AlphaQcode Views(146) Comments(0) Diggs(0) Edit
SQL Passion Week 3: SQL Server的扇区管理混合扇区和统一扇区 SQL Server中每8个数据页作为一个扇区. 在混合扇区中, 其包含的8个页可以分别属于不同的数据库对象; 另一方面, 统一扇区里的8个页都属于同一个数据库对象. 为什么有这样一个区别呢, 这其实主要是... Read More
posted @ 2015-11-23 14:45 AlphaQcode Views(232) Comments(0) Diggs(0) Edit
Week 2: SQL Server的基本存储单位--数据页 上周我们我们讲述了SQL Server如何执行一个查询, 顺带提到了数据页的概念, 这次我们从性能调优的角度上更详细深入的讲解一些数据页. 数据页是SQL Server最基础的存储单位, 所有的东西都和数据页有关. 当我们想提高查询的... Read More
posted @ 2015-11-20 15:58 AlphaQcode Views(338) Comments(0) Diggs(0) Edit
SQLpassion Performance Tuning Training Plan个人学习翻译,如有谬误,请不吝指出,感谢. Week 1: SQL Server如何执行一个查询 在我们进入SQL Server性能调优的繁杂细节之前, 我想先列举一下SQL Server如何执行一个查询(qu... Read More
posted @ 2015-11-19 16:52 AlphaQcode Views(206) Comments(0) Diggs(0) Edit