Shaving off bytes at any scale: Space savings in various subsystems of PostgreSQL
summary
Catalog storage switches from verbose text nodes to a binary node format that tests show cuts on-disk catalog size and speeds reads/writes (and still permits a JSON writer), an empty database starts around 7 MB so savings multiply at scale; changing pg_attribute to reuse pg_type and make names variable saves about 4 bytes per column plus many flag bytes; setting a more aggressive toast_tuple_target trims ~10% on pg_rewrite; splitting visibility into a separate fork can remove ~18 bytes plus info bits from the 24‑byte tuple header, increasing tuples per page.
AI-written summary · about
chapters (6)
- 0:00Introduction
- 1:09Catalog space savings
- 9:39Table storage optimizations
- 19:36WAL record overhead
- 26:27TOAST compression and updates
- 33:19Q&A
related talks
25mPostgreSQL performance tips you have never seen before
54mReducing Costs and Improving Performance With Data Modeling in Postgres
34mIn core compression-How to shrink your database
32mOn compression of everything in Postgres
39mPostgreSQL: Page Buffer Overview
57mUnderstanding Advanced Datatypes in PostgreSQL
25m500X Memory Reduction In Rails With Postgres Schemas And Apartment
52mPostgreSQL Index Strategy Guide
