Edgestore Multi-tenancy & Isolation
summary
Edgestore runs at multi‑million QPS serving trillions of objects on thousands of MySQL shards (248 logical shards visible per deployment), and solves noisy‑neighbor problems by running an engine collocated with MySQL that enforces isolation with four resource pools (read/live, write/live, offline, offline writes) and tenant tags. work is measured as connection‑seconds then refined to execution time per tenant, surfaced in a manual throttling tool that caps connections while operators investigate; automatic throttling exists but is deliberately disabled for root‑cause fixes.
AI-written summary · about
chapters (23)
- 0:00Intro
- 0:25Overview
- 1:04What is Edgestore
- 5:30Architecture cont'd
- 5:57MYSQL EDGESTORE
- 7:18Shard the table
- 8:01Restricted API
- 10:06Workloads cont'd
- 11:56Single Request - 1 token
- 13:25Batch (parallel) Request - n tokens
- 14:42Batch (sequential) Request - n tokens
- 15:39More Isolation breakdowns
- 16:56Layer Resource Pools Engine
- 18:37Breakdown by tenant
- 21:06Examples
- 24:18Resources
- 26:03Write Live - 1 minute snapshot
- 31:24Throttle mechanism
- 36:13Impact
- 38:40Findings
- 40:10Lessons Learned
- 41:34What's next
- 42:37Credits
related talks
39mZero-Downtime Rebalancing and Data Migration of a Mature Multi-Shard Platform
32mData @Scale Seattle- Eric Hwang introduced by Ganapathy Krishnamoorthy
38mIntro: Vitess
49mOnline Database Reliability, Performance, and Consistency Engineering
52mTo Shard or Not to Shard
29mMulti Tenancy — Apache Hbase
39mScaling Shopify's Multi-Tenant Architecture across Multiple Datacenters
06mScaling your applications with Cloud SQL for MySQL
