Redshift Disk Space Monitoring
This is part 2 of a series on Amazon Redshift maintenance:
- Vacuuming for Table Performance
- Monitoring Disk Space
- Monitoring Query Performance
- Column Compression
Why monitor disk space?
Redshift requires free space on your cluster to create temporary tables during query execution. When space becomes tight, your query performance can take a hit.
Besides the performance hit, vacuuming operations also require free space during the rebalancing operation.
You'll also want to keep an eye on disk space for capacity planning purposes.
SQL to analyze disk space usage for the cluster
Besides looking up disk space usage through CloudWatch, you can also query Redshift directly via SQL:
select cast(use.usename as varchar(50)) as Owner, trim(pgdb.datname) as Database, trim(pgn.nspname) as Schema, trim(a.name) as Table, b.mbytes, a.rows from ( select db_id, id, name, sum(rows) as rows from stv_tbl_perm a group by db_id, id, name ) as a join pg_class as pgc on pgc.oid = a.id left join pg_user use on (pgc.relowner = use.usesysid) join pg_namespace as pgn on pgn.oid = pgc.relnamespace and pgn.nspowner > 1 join pg_database as pgdb on pgdb.oid = a.db_id join ( select tbl, count(*) as mbytes from stv_blocklist group by tbl ) b on a.id = b.tbl order by mbytes desc, a.db_id, a.name;
No spam, ever! Unsubscribe any time. Learn more about the product.