KingbaseES中查询对象大小的SQL及函数区别
--查看所有数据库大小
select sys_database.datname, sys_size_pretty(sys_database_size(sys_database.datname)) AS size from sys_database;
--查看指定表中所有索引大小
select sys_size_pretty(sys_indexes_size('tablename'));
--查看指定schema 里所有的索引大小,按从大到小的顺序排列。
select indexrelname, sys_size_pretty(sys_relation_size(relid)) from sys_stat_user_indexes where schemaname='public' order by sys_relation_size(relid) desc;
--查看指定表大小
select sys_size_pretty(sys_table_size('tablename'));
--查看指定表的总大小
select sys_size_pretty(sys_total_relation_size('tablename'));
--查看指定schema 里所有的表大小,按从大到小的顺序排列。
select relname, sys_size_pretty(sys_relation_size(relid)) from sys_stat_user_tables where schemaname='public' order by sys_relation_size(relid) desc;
--查看表空间大小
select spcname from sys_tablespace;
select sys_size_pretty(sys_tablespace_size('sys_default'));
以下几个函数都是用于统计表/索引大小的,通过下图和例子能较好的理解他们之间的包含关系
名称 | 返回类型 | 描述 |
---|---|---|
sys_indexes_size(regclass) | bigint | 统计表的所有索引的总大小,不包括表本身或TOAST表。 |
sys_relation_size(relation regclass, fork text) | bigint | 指定表或索引的指定部分('main'、'fsm'、'vm'或'init')使用的磁盘空间 |
sys_relation_size(relation regclass) | bigint | sys_relation_size(..., 'main')的简写 |
sys_table_size(regclass) | bigint | 统计表使用的磁盘空间,排除索引(但包括 TOAST、空闲空间映射和可见性映射) |
sys_total_relation_size(regclass) | bigint | 统计表所用的总磁盘空间,包括所有的索引和TOAST数据 |
test1=> select
test1-> sys_size_pretty(sys_relation_size('spring_session_attributes', 'main')) as main,
test1-> sys_size_pretty(sys_relation_size('spring_session_attributes', 'fsm')) as fsm,
test1-> sys_size_pretty(sys_relation_size('spring_session_attributes', 'vm')) as vm,
test1-> sys_size_pretty(sys_relation_size('spring_session_attributes', 'init')) as init,
test1-> sys_size_pretty(sys_table_size('spring_session_attributes')) as table ,
test1-> sys_size_pretty(sys_indexes_size('spring_session_attributes')) as indexes,
test1-> sys_size_pretty(sys_total_relation_size('spring_session_attributes')) as total;
main | fsm | vm | init | table | indexes | total
--------+--------+-------+---------+--------+---------+---------
809 MB | 224 kB | 32 kB | 0 bytes | 809 MB | 499 MB | 1308 MB
(1 行记录)
KINGBASE研究院