Welcome to PlanetScale’s free course on database scalability. Ben Dicken walks through methods for scaling your database—from partitioning and replication to sharding, caching, and connection management—so you can build an architecture that meets demand at every stage of growth.
Throughout the course, you’ll follow the scaling journey of Juniper Studios and their game GalaxySurfer, seeing how these techniques apply to a real (fictional) product. The series mixes instruction, animations, and demos with MySQL and the PlanetScale platform. Many concepts apply to both vanilla MySQL and Vitess.
Section 1: Introduction
Get oriented with the course structure, the types of scaling challenges you’ll encounter, and the Juniper Studios storyline that ties the lessons together.
Lessons:
Section 2: Scaling
Explore techniques for growing a database before sharding: tuning, partitioning, vertical and horizontal scaling, replication, caching, and multi-tenancy.
Lessons:
- Path to scaling
- When to scale?
- DB and query tuning
- Partitioning
- Partitioning example
- Vertical scaling
- Replication
- Replica configuration
- Caching
- Cache configuration
- Horizontal scaling
- Tenancy
Section 3: Sharding
Learn when and how to shard: vertical and horizontal strategies, maintenance, connection management, and how it all fits together.
Lessons:
Feedback or questions? Reach out to our team at education@planetscale.com.