更新时间:2024-06-03 GMT+08:00

GS_STATISTIC_HISTORY

GS_STATISTIC_HISTORY是单列历史统计信息管理表,存储有关该数据库中表和索引列的历史统计数据。默认只有系统管理员权限才可以访问此系统表,普通用户需要授权才可以访问。

表1 GS_STATISTIC_HISTORY字段

名称

类型

描述

starelid

oid

所描述字段所属的表或者索引。

starelkind

"char"

所属对象的类型。

staattnum

smallint

所描述字段在表中的编号,从1开始。

stainherit

boolean

是否统计有继承关系的对象。

statimestamp

timestamp with time zone

该条统计信息收集的时间。

stanullfrac

real

所描述字段中为NULL的记录的比率。

stawidth

integer

所描述字段非NULL记录的平均存储宽度,以字节计。

stadistinct

real

标识全局统计信息中数据库节点上字段里唯一的非NULL数据值的数目。

  • 一个大于零的数值:表示独立数值的实际数目。
  • 一个小于零的值:表示distinct值所占总行数的比例,比如stadistinct=-0.5时,它的实际distinct值是总行数*0.5。
  • 零值:表示独立数值的数目未知。

standvfunc

"char"

该条统计信息计算NDV时采用的算法。

  • d:采用原来的DUJ1算法估算。
  • c:采用C19算法估算。

staorigin

"char"

该条统计信息的收集方式来源。

  • a:标识由autoanalyze触发收集。
  • m:标识由手动analyze触发收集。
  • g:标识由插入大量数据触发了gsstat线程做analyze收集。

stakindN

smallint

一个编码,表示这种类型的统计存储在pg_statistic行的第N个“槽位”。

N的取值范围:1~5。

staopN

oid

一个用于生成这些存储在第N个“槽位”的统计信息的操作符。比如,一个柱面图槽位会显示<操作符,该操作符定义了该数据的排序顺序。

N的取值范围:1~5。

stanumbersN

real[]

第N个“槽位”的相关类型的数值类型统计,如果该槽位和数值类型没有关系,则就是NULL。

N的取值范围:1~5。

stavaluesN

anyarray

第N个“槽位”类型的字段数据值,如果该槽位类型不存储任何数据值,则就是NULL。每个数组的元素值实际上都是指定字段的数据类型,因此,除了把这些字段的类型定义成anyarray之外,没有更好的办法。

N的取值范围:1~5。

stadndistinct

real

标识DN1上字段里唯一的非NULL数据值的数目。

  • 一个大于零的数值:表示独立数值的实际数目。
  • 一个小于零的值:表示distinct值所占总行数的比例,比如stadndistinct=-0.5时,它的实际distinct值是总行数*0.5。
  • 零值:表示独立数值的数目未知。

staextinfo

text

统计信息的扩展信息。预留字段。