You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询Redshift集群占用存储空间及结果与控制台不一致问题

问题1&2:查询结果与控制台数值差异原因及准确查询方法

二者数值不一致的核心原因是统计口径不同:

  • svv_table_info系统表的size字段仅统计用户创建的永久表占用的磁盘块总大小,未包含以下存储消耗项,所以总和会比控制台数值小:
    • 用户会话创建的临时表占用空间,这部分需要单独查询svv_temp_table_info系统表统计
    • Redshift内置系统表、运行日志占用的存储空间
    • 执行DELETE/UPDATE操作后产生的、还未被VACUUM回收的死元组占用空间
    • 运行中的事务、排序运算等产生的临时缓存空间
    • 如果你使用的是RA3架构集群,还包含集群本地缓存的冷数据占用空间
  • 控制台统计的是整个集群所有已分配的磁盘块总大小,包含上述所有未被svv_table_info统计的空间,所以二者会有差异。

要获取和控制台对齐的集群总占用空间,可以用以下SQL查询:

SELECT sum(used) AS total_used_mb FROM svv_diskusage;

如果要查询单表的准确占用空间(包含索引、死元组等所有关联占用),可以用:

SELECT pg_total_relation_size('你的表名') AS total_used_bytes;

问题3:MB转TB的换算方式说明

  • 除以两次1024的换算方式是**二进制单位(MiB转TiB)**的正确算法:1 TiB = 1024 GiB = 1024 * 1024 MiB,如果你要统计的是二进制单位的存储空间,这个换算没有问题。
  • 目前大部分公有云存储产品的容量标注用的是十进制单位(MB转TB),换算规则是1 TB = 1000 GB = 1000 * 1000 MB,如果要和控制台的容量单位对齐,可以用这个换算规则。
  • 你本次查询到的数值差异主要来自统计口径不同,换算带来的差异占比很小。

内容的提问来源于stack exchange,提问作者Sree Neher Peguda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.15 18:45:02