Computerworld News Service: I open source-organisationen Mozilla skriver udviklere hver dag mange forskellige versioner af softwarekode, der alle sammen skal holdes styr på.
Det er en del af Sheeri Cabrals job: Hvilke versioner fungerer, hvilke gør ikke, hvor mange gange er de blevet downloadet og hvilke fejl skal rettes omgående.
Til dette formål anvender producenten af browseren Firefox en MySQL-database.
MySQL er et populært struktureret database-system, der er open source, og som organiserer dataene i tabeller.
For nogle få måneder siden begyndte Cabral, der er senior databaseadministrator/-arkitekt hos Mozilla samt bidragyder til MySQL-community'et, at løbe ind i problemer, da databasen oversteg 100 gigabyte.
"Hvis den database ikke fungerer, så er vores downloads ikke tilgængelige," siger hun for at fremhæve, hvor vigtig databasen er.
Den gode løsning
Normalt er løsningen på et sådant problem, at man udvider kapacitet på den server, hvor databasen ligger, eller måske skifter fra harddiske til solid state-drev, forklarer Paul Burns, der er analytiker hos Neovise.
Men Cabral har fundet en anden løsning med teknologi fra en virksomhed ved navn ScaleBase:
I stedet for kun at have denne ene database har Mozilla i praksis virtualiseret sin database ved at splitte den op i et antal klynger, der hver indeholder en del af databasen.
Når der nu foretages en forespørgsel, identificerer ScaleBase-softwaren den klynge, hvor de relevante data ligger, så man på den måde slipper for at søge i hele databasen.
Det øger ydelsen, uden at man har tilføjet ekstra hardware.
"Dette er ikke nogen let udfordring, men det ser ud til at lykkes for dem, og det fungerer," bemærker Cabral.
Sådan fungerer programmet
ScaleBase blev udviklet af et israelsk konsulentfirma for nogle år siden.
Efter adskillige anmodninger fra kunder om hjælp til at skalere MySQL-databaser til web-baserede og mobile applikationer blev ideen om at bryde databasen op i mindre bidder - såkaldt database sharding - testet.
Det fungerede fremragende for en række forskellige kunder, så konsulentfirmaet oprettede et særskilt firma til at sælge dette produkt i et større omfang, fortæller Paul Campaniello, der er vice president for den globale markedsføring hos ScaleBase.
"Folk har virtualiserede maskiner, storage og styresystemer," påpeger han. "Men havde ingen endnu rigtigt virtualiseret MySQL-databasen."
Efter at have fået finansiering via venturekapital for to år siden sendte firmaet i år ScaleBase på markedet.
Analyserer databasen
ScaleBase beskriver flagskibet Data Traffic Manager som et værktøj til load balancing, der sidder mellem en applikationen og den backend-database, der bruges til at gemme applikationens data.
Første gang man bruger software vil ScaleBase automatisk analysere databasen og dele den op i forskellige instances. Når der modtages en forespørgsel dirigeres den direkte til den relevante instance af databasen.
Prisen for ScaleBase er baseret på størrelsen af den database, der skal administreres.
ScaleBases sharding-teknik er ikke noget helt nyt koncept, men det er den første implementering af teknikken i forhold til databaser og i særdeleshed MySQL-databaser, siger Burns fra Neovise.
"Disse databaser har traditionelt ikke været noget, man har splittet op, men ScaleBase anvender en sharding-algoritme og laver adskillige kopier af dataene på forskellige servere," forklarer han.
"De (ScaleBase, red.) har gjort sharding let og automatiseret det."
Teknologien kan være nyttig for enhver, der kører en MySQL-database, hvilket er meget udbredt i open source-verdenen, og vil i særlig grad være nyttig, når databaserne begynder at blive store, påpeger han.
Både Cabral og Burns har dog visse forbehold.
Open source-community'et har en udpræget tendens til at foretrække at gøre tingene selv.
Det er derfor nok ikke alle MySQL-database-administratorer, der vil være interesserede i at købe et produkt til håndtering af denne funktionalitet, men vil i stedet foretrække at udvikle funktionaliteten selv eller anskaffe den fra det øvrige open source-community.
Cabral fortæller, at hun da også undersøgte den mulighed, men konkluderede, at der simpelthen ikke var open source-værktøjer tilgængelig med den funktionalitet, som ScaleBase har.
ScaleBase vil muligvis i fremtiden understøtte andre open source-databaser eller måske endda udvide med andre typer databaser heriblandt håndtering af de stigende udfordringer fra de enorme mængder af ustrukturerede data i forbindelse med big data-tendensen.
Oversat af Thomas Bøndergaard