Db2 用于访问路径选择的统计数据
Db2 在选择查询访问路径时,使用某些 目录表列中的统计数据。 Db2
Db2 在选择访问路径时,直接使用目录表中的某些值。
例如,SYSTABLES和SYSTABLESPACE目录表显示了查询所引用的表包含的数据量以及数据占用的页数,SYSINDEXES表显示了查询最有效的索引,SYSCOLUMNS和SYSCOLDIST目录表显示了谓词的估计过滤因子。
下表列出了 Db2 用于访问路径选择的目录表中的列、触发使用默认值的值以及相应的默认值。 Db2 在访问路径选择过程中直接使用的目录表列在“用于访问路径?”一栏中标记为“是” 以下表格的列。
- RUNSTATS更新的每张表格
- 如下表所示,在RUNSTATS更新每个表时,STATSTIME列也会随之更新。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 统计时间 是 是 False 如果最近一次更新是由RUNSTATS进行的,则显示该更新的日期和时间,在SYSINDEXPART和SYSTABLEPART中不可更新。 如果同一列存在重复的列值(由用户插入),则用于SYSCOLDIST的访问路径选择。 - SYSCOLDIST目录表
- 包含 Db2 用于估算滤波因子的表格级频率、直方图和多列基数统计。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 CARDF 是 是 是 对于TYPE C,列组中收集的不同值的数量;对于TYPE F,列组 -1 中不同值的数量;对于TYPE='H',列组中QUANTILENO列值所指示区间内不同值的数量。 五 COLGROUPCOLNO 是 是 是 与统计数据相关的列集。 如果 NUMCOLUMNS = 1,则包含一个空字符串。 COLVALUE 是 是 是 在分布中经常出现的数值。 5 频率f 是 是 是 将数字乘以100,即可得出包含COLVALUE值的行所占的百分比;对于TYPE='H',在QUANTILENO列值指示的时间间隔内,包含COLVALUE值的行所占的百分比,该百分比介于LOWVALUE和HIGHVALUE之间。5 HIGHVALUE 是 False 是 对于TYPE='H',QUANTILENO列的值表示区间上限。 五 LOWVALUE 是 False 是 对于TYPE='H',QUANTILENO列的值表示区间下限。 五 NUMCOLUMNS 是 是 是 与统计相关的列的数量。 缺省值为 1。 类型 是 是 是 收集的统计类型: - C
- 基数
- F
- 频繁的价值
- N
- 无衬垫
- H
- 直方图统计
QUANTILENO 是 False 是 对于直方图统计,从低到高整个连续数值范围内的分位数的一般序列号。 - SYSCOLDISTSTATS 目录表
- 包含分区级频率、直方图和多列基数统计,RUNSTATS使用这些统计来汇总存储在 SYSIBM.SYSCOLDIST 中的表级频率、直方图和多列基数统计。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 , 2 描述 CARDF 是 是 False 一个数字,乘以100,得出包含COLVALUE值的行的百分比;对于TYPE='F'或TYPE='N',表示分区中适用FREQUENCYF值的行数或键数;对于TYPE='H',表示在QUANTILENO列值指示的时间间隔内,COLVALUE值为LOWVALUE和HIGHVALUE之间的行所占的百分比。 五 COLGROUPCOLNO 是 是 False 与统计数据相关的列集。 COLVALUE 是 是 False 在分布中经常出现的值。 五 频率f 是 是 False 将这个数字乘以100,即可得出包含COLVALUE值的行所占的百分比;对于TYPE='H',在QUANTILENO列的值所指示的时间间隔内,包含COLVALUE值的行所占的百分比,该百分比介于LOWVALUE和HIGHVALUE之间。 五 HIGHVALUE 是 False False 对于TYPE='H',QUANTILENO列的值表示区间上限。 五 钥匙卡数据 是 是 False 分区中不同值的估计数量的内部表示。 LOWVALUE 是 False False 对于TYPE='H',QUANTILENO列的值表示区间下限。 五 NUMCOLUMNS 是 是 False 与统计相关的列的数量。 缺省值为 1。 类型 是 是 False 收集的统计类型: - C
- 基数
- F
- 频繁的价值
- N
- 无衬垫
- H
- 直方图统计
QUANTILENO 是 False False 对于直方图统计,从低到高整个连续数值范围内的分位数的一般序列号。 - SYSCOLSTATS目录表
- 包含分区级列统计信息, Db2 使用这些信息来确定并行度,有时也用于约束滤波因子估计。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 , 3 描述 COLCARD 是 是 是的 3 分区中不同值的数量。 在将COLCARDDATA更新为长度为0的值之前,请勿手动更新此列。 对于XML列指示符、NODEID列和XML表,此列的值被设置为 -2.4 COLCARDDATA 是 是 False 分区中不同值的估计数量的内部表示。 只有在分区上运行 RUNSTATS TABLESPACE 时,才会显示此值。 否则,此列包含长度为0的字符串,表示实际值在COLCARD中。 HIGHKEY 是 是 是的 3 分区中列的最高值的第一个2000字节。如果分区为空,则该值设置为长度为0的字符串 对于LOB列、XML列指示符、NODEID列和XML表,此列的值被设置为空白。 4 HIGH2KEY 是 是 是的 3 分区中列中第二高值的首2000字节。 如果分区为空,则该值设置为长度为0的字符串。 对于LOB列、XML列指示符、NODEID列和XML表,此列的值被设置为空白。 如果列是随机密钥列,则此列将更新为已解码的值。 4 低调 是 是 是的 3 分区中列最低值的最初2000个字节。 如果分区为空,则该值设置为长度为0的字符串。对于LOB列、XML列指示符、NODEID列和XML表,该列的值设置为空白 4 LOW2KEY 是 是 是的 3 分区中列的第二个最低值的第一个2000字节。如果分区为空,则该值设置为长度为0的字符串。对于LOB列、XML列指示符、NODEID列和XML表,该列的值设置为空白 如果列是随机密钥列,则此列将更新为已解码的值。 4 PARTITION 是 是 是 包含定义列的表格的表格空间分区编号。 - SYSCOLUMNS 目录表
每个表和视图的每一列都包含一行。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 COLCARDF 是 是 是 列中不同值的估计数量, -1 用于触发默认值 (25)的使用 , -2 用于辅助索引、XML列指示符、NODEID列和XML表 4 HIGH2KEY 是 是 是 此列中第二高值的首2000个字节。如果表格为空,则该值设置为长度为0的字符串 对于辅助索引、XML 列指示符、NODEID 列和 XML 表,此列的值设置为空白。 如果该列是随机键列,则 RUNSTATS 不会更新 HIGH2KEY。 4 LOW2KEY 是 是 是 此列中第二个最低值的首2000个字节。如果表格为空,则该值设置为长度为0的字符串 对于辅助索引、XML 列指示符、NODEID 列和 XML 表,此列的值设置为空白。 如果该列是随机键列,则 RUNSTATS 不会更新 LOW2KEY。 4 - SYSINDEXES目录表
- 包含表格级别的索引统计信息, Db2 使用这些信息进行索引成本计算。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 AVGKEYLEN 是 False False 平均按键长度。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。 CLUSTERED 是 是 False 表格是否真的按索引分组。 对于辅助索引、节点ID索引和XML索引,此列的值设置为空白。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。 集群 False False 是 该指数是否使用CLUSTER创建。 集群比率 是 是 是 这个数字乘以100,就是按聚类顺序排列的行数所占的百分比。 例如,1表示所有行都按聚类顺序排列,而.87825表示 87.825 %的行按聚类顺序排列。 对于分区索引,它是所有索引分区在分区行数方面的加权平均值。 此列的值设置为 -2 ,用于辅助索引、节点ID索引和XML索引。 如果此列包含默认值0,则 Db2 使用CLUSTERRATIO中的值(百分比)进行访问路径选择。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。 第一张车钥匙卡 F 是 是 是 第一个键列的不同值的数量,或者在单个分区收集统计信息时更新后的估计值, -1 以触发使用默认值 (25)。 全键卡 F 是 是 是 完整密钥的不同值数量, -1 ,用于触发默认值的使用(25)。 NLEAF 是 是 是 索引中活动叶页的数量, -1 用于触发默认值 ( SYSTABLES.CARD/300 )的使用。 NLEVELS 是 是 是 索引树中的层级数, -1 ,用于触发默认值 (2)的使用。 SPACEF 是 是 False 磁盘存储容量(以千字节为单位)。 数据重复因子F 是 是 是 索引键排序后,数据页被重复扫描的次数。 如果尚未收集统计数据,则该号码为 -1。 有效值为 -1 或任何大于等于1的值。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。 - SYSINDEXPART 目录表
- 包含索引空间利用率和索引组织的统计数据。 对于索引控制分区表空间的分区索引,限制键列也用于有限分区扫描场景。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 AVGKEYLEN 是 False False 平均按键长度。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。 CARDF 是 False False 索引中引用数据行或LOB的RID数量。 如果尚未收集统计数据,则值为 -1。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。 DSNUM 是 是 False 数据集的数量。 扩展数据块 是 是 False 数据集范围的数量(对于多个数据集,该值表示最后一个数据集中的范围)。 FAROFFPOSF 是 False False 按索引顺序访问所有数据记录时,需要访问不同 且较远
页面的次数。每次 Db2 访问一个遥远的页面时,按索引顺序访问
下一个记录
可能需要I/O活动。对于非分段表格空间,如果两个页码相差16或更多,则视为远离当前页。 对于分段表格空间,如果两个页码相差 SEGSIZE * 2 或更多,则视为远离当前页。
NEAROFFPOSF和FAROFFPOSF共同表示索引对表空间聚类模式的跟随程度。 对于聚类指数,NEAROFFPOSF和FAROFFPOSF随着聚类程度的提高而接近0。 重组应该使它们更接近其最佳值;但是,如果在CREATE TABLESPACE语句中指定了非零的FREEPAGE值,重组后的NEAROFFPOSF将反映定义索引的表。 对于非聚集索引,不要期待最佳值。 如果尚未收集统计数据,则值为 -1。
如果索引是哈希索引、节点ID索引或XML索引,则值为 -2。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。LEAFDIST 是 False False 连续两页之间的页数。如果索引是节点ID索引、AUX索引、哈希索引或XML索引,则该值为 -2 LEAFFAR 是 是 False 在索引扫描中,连续访问的活动页面中,与之前页面相隔较远的页面数量。 更多信息请参阅 LEAFNEAR和LEAFFAR列。 如果索引是哈希索引、节点ID索引或XML索引,则值为 -2 LEAFNEAR 是 是 False 连续活动页面中位于前一个页面附近的页面数量。 更多信息请参阅 LEAFNEAR和LEAFFAR列。 如果索引是哈希索引、节点ID索引或XML索引,则值为 -2 LIMITKEY False False 是 内部格式分区限制键,如果索引未分区,则为0。 NEAROFFPOSF 是 False False 按索引顺序访问所有数据记录时,需要访问不同页面 或相邻页面的
次数。每次 Db2 访问一个近关闭页面时,按索引顺序访问
下一个记录
可能需要I/O活动。 有关NEAROFFPOSF的更多信息,请参阅FAROFFPOSF的描述。如果当前索引行不在前一个索引行的同一数据页或下一数据页上,且两个数据页之间的距离不符合FAROFFPOSF的条件,则NEAROFFPOSF会递增。
对于非分段表格空间,如果两个页码之间的差值大于或等于2且小于16,则当前页附近的一页被视为附近页。 对于分段表格空间,如果两个页码之间的差值大于或等于2且小于SEGSIZE * 2,则当前页附近的页面被视为当前页。 REORG后,NEAROFFPOSF字段中的非零值可能与分段表空间中包含的空间映射页的数量有关。
如果索引是哈希索引、节点ID索引或XML索引,则值为 -2。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。数量 是 False False 4K 数据集的主要空间分配。 PSEUDO_DEL_ENTRIES 是 是 False 假删除的密钥数量。 SECQTYI 是 False False 以4 KB为单位的二级空间分配,以整数格式存储,而不是SQTY支持的小整数格式。 如果未使用存储组,则该值为0。 太空 是 False False 当前分配给所有范围的 KB 空间数量(如果一个页面集包含多个范围,则包含所有范围使用的累积空间) SQTY 是 False False 数据集的二级空间分配为4 KB块。 SPACEF 是 是 False 磁盘存储容量(以千字节为单位)。 - SYSINDEXSPACESTATS 目录表
- 包含索引空间的实时统计(RTS)。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 NLEVELS 是 是 是 索引树中的层级数。 NLEAF 是 是 是 索引中的叶页数量。 - SYSINDEXSTATS 目录表
- 包含分区级索引统计信息,RUNSTATS使用这些信息汇总存储在 SYSIBM.SYSINDEXES 中的表级索引统计信息。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 集群比率 是 是 False 这个数字乘以100,就是按聚类顺序排列的行数所占的百分比。 例如,1表示所有行都按聚类顺序排列,而.87825表示 87.825 %的行按聚类顺序排列。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。 第一张车钥匙卡 F 是 是 False 第一个关键列的不同值的数量,或者在单个分区收集统计信息时更新后的估计值。 FULLKEYCARDDATA 是 是 False 全键中不同值的内部表示。 全键卡 F 是 是 False 完整密钥的不同值的数量。 KEYCOUNTF 是 是 False 索引分区中的RID总数。 如果尚未收集统计数据,则值为 -1。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。 NLEAF 是 是 False 索引中的页码。 NLEVELS 是 是 False 索引树中的级别数。 数据重复因子F 是 是 False 索引键排序后,数据页被重复扫描的次数。 如果尚未收集统计数据,则该号码为 -1。 有效值为 -1 或任何大于等于1的值。 对于EXCLUDE NULL KEYS索引,统计信息基于索引的实际内容。 - SYSKEYTARGETS目录表
- 包含列表达式索引键的表级频率、直方图和多列基数统计信息。 Db2 在匹配表达式的过滤因子估计算法中使用这些值。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 CARDF 是 False 是 关键目标的不同数值。 此列的值设置为 -2 ,用于NODEID索引和XML索引。 HIGH2KEY 是 是 是 第二高的关键值 LOW2KEY 是 是 是 第二低键值 统计格式 是 是 是 统计类型: - 空白
- 未收集统计数据,或VARCHAR列统计值已填充
- N
- Varchar统计值不填充
- SYSKEYTARGETSTATS 目录表
- 包含列表达式索引中键的分区级关键统计信息。 RUNSTATS使用这些值来汇总表级关键列表达式的统计信息。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 HIGHKEY 是 是 False 最高键值 HIGH2KEY 是 是 False 第二高的关键值 低调 是 是 False 最低键值 LOW2KEY 是 是 False 第二低键值 统计格式 是 是 False 统计类型: - 空白
- 未收集统计数据,或VARCHAR列统计值已填充
- N
- Varchar统计值不填充
- SYSKEYTGTDIST目录表
- 包含列表达式索引键的表级频率、直方图和多列基数统计信息。 Db2 在匹配表达式的过滤因子估计算法中使用这些值。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 CARDF 是 是 是 对于TYPE C,键组中收集的不同值的数量;对于TYPE F,键组 -1 的不同值的数量;对于TYPE='H',QUANTILENO列中值所指示的区间列组中不同值的数量。 KEYGROUPKEYNO 是 是 是 与统计数据相关的一组密钥。 如果 NUMKEYS = 1,则包含一个空字符串。 KEYVALUE 是 是 是 在分布中经常出现的值。 频率f 是 是 是 将这个数字乘以100,即可得出包含KEYVALUE值的行所占的百分比;对于TYPE='H',在QUANTILENO列值指示的时间间隔内,包含KEYVALUE值的行在LOWVALUE和HIGHVALUE之间的百分比。 HIGHVALUE 是 是 是 对于TYPE='H',QUANTILENO列的值表示区间上限。 LOWVALUE 是 是 是 对于TYPE='H',QUANTILENO列的值表示区间下限。 NUMKEYS 是 是 是 与统计数据相关的键的数量。 缺省值为 1。 类型 是 是 是 收集的统计类型: - C
- 基数
- F
- 频繁的价值
- N
- 无衬垫
- H
- 直方图统计
QUANTILENO 是 是 是 对于直方图统计,从低到高整个连续数值范围内的分位数的一般序列号。 - SYSKEYTGTDISTSTATS 目录表
- 包含分区级频率、直方图和列表达式索引键的多列基数统计信息。 RUNSTATS使用这些值汇总存储在 SYSIBM.SYSCOLDIST 中的表格级统计数据。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 CARDF 是 是 False 一个数字,乘以100,得出包含KEYVALUE值的行的百分比;对于TYPE='H',在QUANTILENO列的值指示的时间间隔内,包含COLVALUE值的行在LOWVALUE和HIGHVALUE之间的百分率。 KEYVALUE 是 是 False 与统计数据相关的键集 KEYGROUPKEYNO 是 是 False 在分布中经常出现的值。 频率f 是 是 False 将这个数字乘以100,即可得出包含KEYVALUE值的行所占的百分比;对于TYPE='H',在QUANTILENO列值指示的时间间隔内,包含KEYVALUE值的行在LOWVALUE和HIGHVALUE之间的百分比。 HIGHVALUE 是 是 False 对于TYPE='H',QUANTILENO列的值表示区间上限。 LOWVALUE 是 是 False 对于TYPE='H',QUANTILENO列的值表示区间下限。 QUANTILENO 是 是 False 对于直方图统计,从低到高整个连续数值范围内的分位数的一般序列号。 - SYSLOBSTATS 目录表
- 包含LOB表空间统计信息。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 AVGSIZE 是 是 False LOB的平均大小(以字节为单位)。 可用空间 是 是 False LOB表空间可用空间的大小(以KB为单位)。 ORGRATIO 是 是 False LOB表空间中组织所占的百分比。 数值为100表示LOB表格空间组织完美。 数值为1表示LOB表空间混乱。 0.00 值表明LOB表空间完全混乱。 一个空的LOB表空间,其ORGRATIO值为 100.00。
- SYSROUTINES 目录表
- 包含表格功能的统计信息。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 CARDINALITY False 是 是 表函数的预测基数, -1 用于触发默认值 (10000)的使用 INITIAL_INSTS False 是 是 首次和最后一次调用函数时执行的指令估计数, -1 用于触发默认值 (40000)的使用 INITIAL_IOS False 是 是 首次和最后一次调用函数时执行的IO估计数量, -1 以触发默认值 (0)的使用 INSTS_PER_INVOC False 是 是 每次调用 -1 触发默认值使用的预计指令数(4000) IOS_PER_INVOC False 是 是 每次调用的 IO 估计数量, -1 触发使用默认值 (0) - SYSTABLEPART目录表
- 包含空间利用率的统计数据。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 AVGROWLEN 是 False False 平均行长度 CARDF 是 False False 表空间或分区中的总行数。 对于LOB表空间,表空间中的LOB数量。 DSNUM 是 是 False 数据集的数量。 扩展数据块 是 是 False 数据集范围的数量(对于多个数据集,该值表示最后一个数据集中的范围)。 FARINDREF 是 False False 从原页面移至其他页面的行数。 如果更新操作导致记录长度增加超过其所在页面的可用空间,则记录将被移至另一页面。 在表格空间重新组织之前,访问记录时需要额外添加页码。 NEARINDREF和FARINDREF的总和就是此类记录的总数。
对于非分段表空间,如果两个页码相差 16 或更少,则认为该页
靠近
当前页;否则,该页距离当前页较远
。对于分段表格空间,如果两个页码相差不超过(SEGSIZE * 2),则视为
相邻页面
。 否则,它就远离了
最初的页面。与远离原始页面的记录相比,重新定位到原始页面附近的记录访问速度更快。
NEARINDREF 是 False False 在原页面附近重新排列的行数。 页面保存 是 False False 由于使用了数据压缩,表格空间或分区中保存的页面百分比(以100为基数)。 例如,数值为25表示节省了25%,因此所需页数仅为不压缩数据情况下所需页数的75%。 如果使用数据压缩无法节省成本,或者尚未收集统计数据,则该值为0。 如果数据压缩导致数据集中的页面数量增加,则该值可能为负数。 该计算包括每行的管理字节、字典所需的字节以及表空间和分区当前 FREEPAGE 和 PCTFREE 规范所需的字节。
该计算基于平均行长度,结果会因实际行长度而异。
PERCACTIVE 是 False False 活动行所占空间的百分比,包含活动表的实际数据, -2 ,用于LOB表空间。 该值受CREATE TABLESPACE语句中的PCTFREE和FREEPAGE参数以及分段表空间中未使用的段的影响。
PERCDROP 是 False False 对于非分段表空间,为已删除表中的数据行所占空间的百分比;对于分段表空间,为0。 数量 是 False False 4K 数据集的主要空间分配。 SECQTYI 是 False False 以4 KB为单位的二级空间分配,以整数格式存储,而不是SQTY支持的小整数格式。 如果未使用存储组,则该值为0。 太空 是 False False 当前分配给所有范围的 KB 数量(如果一个页面集包含多个范围,则包含所有范围使用的累积空间)。 SPACEF 是 是 False 磁盘存储容量(以千字节为单位)。 SQTY 是 False False 4K 数据集的二级空间分配块 - SYSTABLES目录表
- 包含 Db2 在整个查询成本计算过程中使用的表格级统计信息。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 AVGROWLEN 是 是 False 表格空间中指定的表格平均行数。 CARDF 是 是 是 表中的总行数或辅助表中的LOB总数, -1 用于触发默认值 (10000)的使用。 EDPROC False False 是 如果使用编辑退出程序,则非空白值。 NPAGES 是 是 是 出现此表行的总页数, -1 用于触发默认值 (CEILING(1 + CARD/20 ))的使用 NPAGESF 是 是 是 表使用的页数。 PCTPAGES 是 是 False 对于非分段表空间,指包含表格行的表空间总页数所占百分比;对于分段表空间,指分配给包含表格行的表的一组段中的总页数所占百分比。 PCTROWCOMP 是 是 是 表中活动行总数中压缩行的百分比。 SPACEF 是 是 False 磁盘存储容量(以千字节为单位)。 - SYSTABLESPACE目录表
- 包含 Db2 用于非分段表空间成本计算的表空间级别统计信息。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 AVGROWLEN 是 False False 平均行数。 NACTIVEF 是 是 是 表格空间中的活动页面数,如果使用光标扫描整个文件,则触及的页面数,0表示改为使用非活动列中的值。 如果 NACTIVE 包含 0,则 Db2 使用默认值 (CEILING(1 + CARD/20 ))。 太空 是 False False 磁盘存储容量(以千字节为单位)。 SPACEF 是 是 False 磁盘存储容量(以千字节为单位)。 - SYSTABLESPACESTATS 目录表
- 包含表格空间的实时统计(RTS)。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 totalRows 是 是 是 表空间或分区中的行数或LOB数,根据内存中RTS计数器的插入和删除计数计算得出。 NPAGES 是 是 是 分区或表空间中具有活动行的不同页面的数量。 - SYSTABSTATS 目录表
- 包含分区级表统计信息, Db2 在计算有限分区扫描时使用这些信息,RUNSTATS也使用这些信息来汇总存储在 SYSIBM.SYSTABLES 中的表级表统计信息。
列名 由RUNSTATS设置? 用户可以更新吗? 用于通道? 1 描述 CARDF 是 是 是 分区中的总行数, -1 ,用于触发CARD列中的值。 如果CARD是 -1 ,则 Db2 使用默认值 (10000)。 活跃的 是 是 False 分区中活动页面的数量。 NPAGES 是 是 是 显示分区行的总页数, -1 用于触发默认值 (CEILING(1 + CARD/20 ))的使用。 PCTPAGES 是 是 False 分区中包含表格行的活动页面的百分比。 PCTROWCOMP 是 是 False 分区中压缩的行数占活动行总数的百分比, -1 用于触发默认值 (0)的使用。
- LOB相关值的统计信息不用于访问路径选择。
- SYSCOLDISTSTATS和SYSINDEXSTATS目录表不用于并行访问路径。
- Db2 使用以下SYSCOLSTATS目录表列来确定并行度:COLCARD、HIGHKEY、LOWKEY、 和。 HIGH2KEY LOW2KEY
- 当表统计信息由RUNSTATS TABLESPACE使用EXCLUDE NULL KEYS索引确定时,统计信息会进行调整,以考虑空键,并且与不排除空键的索引相同。
当表统计信息由RUNSTATS INDEX使用EXCLUDE NULL KEYS索引确定时,排除的null键的数量由对SYSTABLESPACESTATS目录表的TOTALROWS列的查询确定。 如果该列的值不可用或为空,RUNSTATS会发出消息并返回代码停止。
- 当表统计信息由RUNSTATS TABLESPACE和INDEX通过EXCLUDE NULL KEYS索引确定时,将根据TYPE列的值调整数值:
- TYPE=F
- 计算频繁值时,实际的和排除的无效键都包括在内。 如果排除的无效键不是最频繁或最不频繁的值之一,则仍将其作为单独的一行插入。
- TYPE=H
- 计算直方图值时,实际的和排除的无效键都包括在内。 如果排除的无效键属于第一或最后一部分,则根据该部分调整以下值,或创建新的部分:
- CARDF
- 频率f
- LOWVALUE
- HIGHVALUE
- TYPE=C
- 结果与不包含空键的索引相同。
- TYPE=N
- 在计算频繁值时,实际值和排除的零值键值均包含在内。 如果排除的无效键不是最频繁或最不频繁的值之一,则仍将其作为单独的一行插入。