Kingbase数据库中表是以文件的形式存放在操作系统中,单个表的体积如果太大会占用大量磁盘空间,如果表的更新比较频繁,还会产生大量的死元组,因此,对数据库中的大表需要格外关注,如果单个表的体积大到一定程度,建议将其改为分区表,并将表的子分区存放在多个表空间中。
select
schemaname as table_schema,
relname as table_name,
sys_size_pretty(sys_total_relation_size(relid)) as total_size,
sys_size_pretty(sys_relation_size(relid)) as data_size,
sys_size_pretty(sys_total_relation_size(relid)-sys_relation_size(relid)) as external_size
from sys_catalog.sys_statio_user_tables
order by sys_total_relation_size(relid) desc,sys_relation_size(relid) desc
limit 10;