Problem · seen at 4 companies
Single-table scaling ceiling
One table outgrew the biggest machine you can buy — the only fix left is to cut the table itself into pieces.
The wall
A single table's size or write volume outgrows what any one database instance can serve, and because a table is the smallest unit vertical partitioning can move, only splitting the table itself across shards relieves it. 4 teams hit this wall; the breakdowns below are the evidence.
Same wall, 4 systems
Figma
Figma Blog
The biggest tables outgrew any single instance, and vertical partitioning can't split a table. Read the breakdown →
Canva
Canva Engineering Blog
Canva's media tables hit every MySQL ceiling at once: migrations, filesystem, replication. Read the breakdown →
Notion
Notion Blog
The block table's writes outgrew the instance: VACUUM stalled, transaction-ID wraparound loomed. Read the breakdown →
Pinterest
Pinterest Engineering Blog
The pins table outgrew any one machine; every clustered alternative broke first. Read the breakdown →
Patterns in this class
Every breakdown
Figma Blog · Mar 14, 2024Sharding Postgres Without Leaving PostgresCanva Engineering Blog · Nov 29, 2022Every Ceiling at Once: How Canva Left MySQL for DynamoDBNotion Blog · Oct 6, 2021Before the Wraparound: Sharding Postgres at NotionPinterest Engineering Blog · Aug 17, 2015Shard or Do Not Shard: Pinterest's Hand-Built MySQL Fleet