Home / Companies / Tiger Data / Blog / Post Details
Content Deep Dive

Reading Table Bloat Before It Reads You

Blog post from Tiger Data

Post Details
Company
Date Published
Author
NanoHertz Communications
Word Count
1,781
Company Posts That Month
12
Language
English
Hacker News Points
-
Post removed?
No
Summary

Append-only PostgreSQL tables can accumulate substantial dead space despite never being updated, primarily through aborted insert batches, while insert-triggered autovacuum may run frequently to freeze tuples and maintain visibility metadata. The post explains how to use statistics from pg_stat_user_tables to rank tables by estimated dead tuples, dead-space ratio, insert activity, size, and autovacuum recency, distinguishing between healthy vacuum activity, workloads where vacuum is falling behind, and cleanup blocked by long-running transactions or replication slots. It also notes that index bloat requires separate density measurements with pgstatindex, with nonsequential B-tree indexes such as those on device identifiers often more vulnerable than time-ordered indexes. Recommended practices include applying fixed per-partition autovacuum thresholds rather than large-table scale factors, increasing per-table vacuum cost limits where appropriate, ensuring future partitions inherit settings, and alerting when dead-space ratios rise or autovacuum becomes unexpectedly stale. Plain VACUUM reclaims space for reuse rather than shrinking files, and persistent growth after tuning may indicate that storage architecture rather than vacuum configuration is the limiting factor.

Trends Found in this Post

No tracked trend matches for this post yet.

Use This Data

Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.