Adopt Platform CNCF Graduated App Definition and Development / Database

Technology Guide

Vitess

License: Apache-2.0

Vitess Logo

Field Guide

Complete Guide

Vitess is a database clustering system that turns MySQL into a horizontally-scalable, sharded database while keeping it look like a single logical MySQL server to applications. It was built at YouTube to survive the scaling problems of a write-heavy MySQL deployment and is now a CNCF graduated project.

Clients talk to VTGate, a stateless proxy that speaks the MySQL wire protocol. VTGate parses queries, consults a VSchema to figure out how tables are sharded, and routes or scatter-gathers the query to the right VTTablet processes, which each sit in front of a real MySQL instance. Resharding is online: Vitess can split shards by streaming rows between tablets, switching writes over atomically, and cleaning up the old shards, all without downtime. It also handles topology metadata, backups, automatic failover, and connection pooling, so MySQL’s usual operational pain points are absorbed by the control plane.

Vitess powers databases at Slack, YouTube, Square, GitHub, HubSpot, and PlanetScale, which was built directly on top of it.

CNCF Project

Cloud Native Computing Foundation

Accepted: 2018-02-05
Incubating: 2018-02-05
Graduated: 2019-11-05

Community

Join the conversation

No articles found for Vitess yet. Check back soon!