前言:统计信息作为sql server优化器生成执行计划的重要参考,需要数据库开发人员,数据库管理员对其有一定的理解,从而合理高效的应用,管理.
第一部分 概念
统计信息(statistics):描述某个(些)栏位,索引的数据分布情况.优化器用其评估生成高效执行计划.
密度(density):一个比率值,显示在一个(组)列中有多少唯一值.(实际应用中值越小越好)
Density = 1 / Number of distinct values for column(s)
直方图(histogram):将数据分割成不同的段(steps),用于描述,记录每段数据分布的具体情况(抽样创建).最多分为200 steps
DBCC show_statistics(object_name,Column_name)
Header(信息头)包含统计信息一系列元数据
Density(密度)包含列(列组)的密度信息及平均列(组)长度
Histogram(直方图)包含直方图描述信息.
Histogram(直方图)
RANGE_HI_KEY:直方图列(多列情况为首列记录)段的上限值.列值就是键值
RANGE_ROWS:其相应列值位于此段(不包含上限)的行得数量(估计值)
EQ_ROWS:等于其列值上限值的行数
DISTINCT_RANGE_ROWS: RANGE_ROWS中的非重复值数量
AVG_RANGE_ROWS:直方图段内值得平均行数(不包括上限)
DISTINCT_RANGE_ROWS > 0则为RANGE_ROWS / DISTINCT_RANGE_ROWS
新闻热点
疑难解答