Sprida ut lasten hos en traditionell relationsdatabas över flera datorer i ett kluster är alltid en avvägning om vad du är villig att ge avkall på i gengäld mot ökad prestanda.
Nu har Google en teknik som får relationsdatabasen MySQL att möta behovet hos miljontals besökare på Youtube.
Mjukvaran kallar Google för Vitess och får MySQL att fungera bättre i riktigt stora miljöer. Koden har man skrivit i Googles egna utvecklingsspråk Go.
Vitess består av olika komponenter och Google har redan implementerat Vtocc som levererar videofilmer till de 800 miljoner användare som besöker Youtube varje månad.
Själva videofilmerna är lagrade direkt i ett filsystem men all metadata som användarinställningar, landsinställningar och information som behövs för riktad marknadsföring hämtas från MySQL.
Problemet som Vitess löser är behovet av öppna anslutningar mot databasen. Normalt behövs en tråd för varje öppen anslutning, men har du tiotusentals samtidiga användare är det inte längre effektivt.
Google löser problemet i Vitess genom att lägga på en mellanprogramvara som cachar liknande databasförfrågningar i ett mindre antal anslutningar. Vtocc kollar också på databasfrågorna och ser till att de kan utföras mer effektivt.
Koden är publicerad på Google Code.