GitHub uses MySQL and v-test for their database management and scaling strategy
- GitHub has a standard MySQL setup with 80 clusters and 2000 instances
- They have a read-heavy load with 330 terabytes of data across primaries and replicas
- Their scaling strategy includes setting up separate clusters for new features, breaking up existing clusters, and adding more replicas
- They ran into problems with scaling approaches and schema migration times
- They implemented v-test as a solution, which is a sharding model that fits their data model well
- v-test allows for seamless schema changes, automatic failure detection and repair, and query consolidation
- GitHub has successfully migrated 20 key spaces to v-test, reducing the number of hosts needed and improving read and write rates
GitHub had to perform brain surgery on their database clusters to separate tables and spread the load, which was a time-consuming and difficult process