PG或GreenPlum统计信息和执行计划总结

0    366    2

Tags:

👉 本文共约4486个字,系统预计阅读时间或需17分钟。

SQL总结

视图pg_stats

视图pg_stats提供对存储在pg_statistic目录中信息的访问

名称类型引用描述
schemanamenamepg_namespace.nspname包含表的模式名
tablenamenamepg_class.relname表名
attnamenamepg_attribute.attname被此行描述的列名
inheritedbool如果为真,表示此行包括继承子列,不仅仅是指定表中的值
null_fracreal列项中为空的比例
avg_widthinteger列项的平均字节宽度
n_distinctreal如果大于零,表示列中可区分值的估计个数。
如果小于零,是可区分值个数除以行数的负值(当ANALYZE认为可区分值的数量会随着表增长而增加时采用负值的形式,而如果认为列具有固定数量的可选值时采用正值的形式)。例如,-1表示一个唯一列,即其中可区分值的个数等于行数。
most_common_valsanyarray列中最常用值的一个列表(如果没有任何一个值看起来比其他值更常用,此列为空)
most_common_freqsreal[]最常用值的频率列表,即每一个常用值的出现次数除以总行数(如果most_common_vals为空,则此列为空)
histogram_boundsanyarray将列值划分成大小接近的组的值列表。如果存在most_common_vals,其中的值会被直方图计算所忽略(如果列类型没有一个<操作符或者most_common_vals等于整个值集合,则此列为空)
correlationreal物理行顺序和列值逻辑顺序之间的统计关联。其范围从-1到+1。当值接近-1或+1时,在列上的一个索引扫描被认为比值接近0时的代价更低,因为这种情况减少了对磁盘的随机访问(如果列数据类型不具有一个<操作符,则此列为空)
most_common_elemsanyarray在列值中,最经常出现的非空元素列表(对标度类型为空)
most_common_elem_freqsreal[]最常用元素值的频度列表,即含有至少一个给定值实例的行的分数。在每个元素的频度之后有二至三个附加值,它们是每个元素频度的最小和最大值,以及可选的空元素的频度(如果most_common_elems为空,则此列为空)
elem_count_histogramreal[]在列值中可区分非空元素值计数的一个直方图,后面跟随可区分非空元素的平均数(对于标度类型为空)

对于n_distinct列,

若为正数,则直接表示不同值的个数;

若为负值,则需要绝对值乘以行数才表示不同值的个数,-1表示不同值的个数等于行数,所以,约接近于-1,则不同值的个数越大。

关于“可区分值”,它是指在某个数据集中,某个属性的取值个数。例如,如果一个属性的取值只有 0 和 1,那么这个属性的可区分值就是 2。

科学计数法:

4.1E+11
410 000 000 000

3.17804e+06 表示的是3.17804乘以10的6次方,即:
3.17804 * 10^6 = 3,178,040

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复