Go MySQL Beginners Tutorial
YouTube-technici ontwikkelen een set software, genaamd Vitess, die helpt om open-source MySQL-databases efficiënter te laten werken in zeer grootschalige productieomgevingen. Om de code te schrijven, gebruiken ze Google's programmeertaal Go.
YouTube gebruikt al een Vitess-component, Vtocc, om video's te helpen leveren aan alle 800 miljoen maandelijkse gebruikers van de service. Google heeft YouTube in 2006 overgenomen.
Vtocc is "zeer stabiel geweest en beschikt over alle benodigde hulpmiddelen voor gebruik in een productieomgeving", zei YouTube-architect Sugu Sougoumarane, die samen met YouTube-ingenieur Mike Solomon Vitess besprak op de Usenix LISA-conferentie (Large Installation System Administration) die deze week in San Diego wordt gehouden.
Dat Vitess in Go is geschreven zou kunnen helpen bij het valideren van het idee dat deze relatief nieuwe programmeertaal zou kunnen worden gebruikt in grootschalige productieomgevingen. Google introduceerde versie 1 van Go in maart.
YouTube serveert elke maand meer dan 4 miljard uur aan video's. Ongeveer 72 uur aan video worden elke minuut geüpload naar de service. Terwijl YouTube al zijn video's direct op een bestandssysteem opslaat, gebruikt het MySQL om alle metadata op te slaan die nodig zijn voor elke video, zoals gebruikersvoorkeuren, advertentie-informatie, landaanpassingen en andere benodigde stukjes informatie.
YouTube vindt het leuk om MySQL te gebruiken voor zijn betrouwbaarheid, zei Solomon, een van de ingenieurs die de dienst oorspronkelijk had gebouwd. Het heeft eigenaardigheden, maar die eigenaardigheden zijn bekend en kunnen vrij gemakkelijk worden gemitigeerd, zei hij. MySQL heeft echter ook problemen met schalen - in ieder geval schalen om een service zo groot als YouTube te kunnen gebruiken.
"Het grootste probleem met MySQL is dat wanneer je eenmaal een bepaald punt [van gebruik] bereikt, je veel tijd om hardware te beheren en hoeveel instanties u heeft, "zei Solomon. "We willen die brok automatiseren, we willen elke actie ondernemen die gecompliceerd en foutgevoelig is en hem zelf genezen."
MySQL is ook niet erg efficiënt wanneer het in een grote implementatie wordt gebruikt. Normaal gesproken vereist elke verbinding met MySQL zijn eigen thread op de server. Deze aanpak is echter niet haalbaar op de schaal van de YouTube-activiteiten. "Het runnen van tienduizenden verbindingen is niet echt haalbaar", zei Solomon.
De ingenieurs van het bedrijf waren echter terughoudend om te proberen de kern-MySQL-code zelf te veranderen, wijzend op het aanbrengen van wijzigingen in het complexe en enigszins moeilijk te -code begrijpen kan vaak resulteren in onverwachte effecten. "Het is niet eenvoudig, alleen als je denkt dat je weet wat je doet, kom je in de problemen", zei Solomon.
Dus Vitess is gemaakt om in combinatie met MySQL te worden gebruikt om extra beheermogelijkheden te bieden. De Vtocc-component consolideert bijvoorbeeld duizenden binnenkomende SQL-query's in een kleiner aantal batches, zodat MySQL minder resources kan gebruiken om aan deze verzoeken te voldoen. Vtocc parseert ook query's zodat ze efficiënter kunnen worden uitgevoerd en vermindert het werk dat wordt veroorzaakt door dubbele query's door de resultaten van één query opnieuw te gebruiken om aan de andere identieke verzoeken te voldoen.
Door Go te gebruiken kunnen YouTube-ontwikkelaars productiever zijn dan ze zouden doen gebruikten een meer traditionele taal, zei Sougoumarane.
"Zo expressief is Go," zei Sougoumarane. "De taaleigenschappen zijn goed doordacht, ze helpen je dingen op een veel elegantere manier samen te stellen dan traditionele talen." Sougoumarane prees Go's gelijktijdigheidsondersteuning, van vitaal belang voor gebruik in multicore-processors. "U hoeft zich geen zorgen te maken over het beheer van discussielijnen. Go beheert ze voor u", zei hij.
De taal heeft ook een aantal nadelen, gaf Sougoumarane toe. Foutafhandeling kan bijvoorbeeld worden verbeterd. Planning en garbage collection zouden ook wat werk kunnen gebruiken. Joab Jackson behandelt bedrijfssoftware en algemeen technologisch nieuws voor The IDG News Service . Volg Joab op Twitter op @Joab_Jackson. Het e-mailadres van Joab is [email protected]
Panasonic daagt Nikon uit met HD-video op fotocamera Panasonic is bezig met de ontwikkeling van een versie van de Lumix G1 digitale fotocamera met de mogelijkheid om op te nemen high-definition video met ...
Panasonic ontwikkelt een versie van zijn Lumix G1 digitale fotocamera met de mogelijkheid om high-definition video op te nemen met autofocus.
E-voting: wat kan het duren voor een soepele verkiezing? P> p> p> p> p> p> p> p> p> p> p> p> p> De Amerikaanse verkiezingen van dinsdag worden misschien niet zo lang onthouden problemen met stemsystemen, maar er waren op zijn minst verspreide problemen. De Amerikaanse verkiezingen van dinsdag worden misschien niet lang onthouden vanwege wijdverspreide problemen met stemsystemen, maar er waren op zijn minst verspreide meldingen van problemen met touchs
[Lees meer: Malware verwijderen vanaf uw Windows-pc]
Afdrukken met IE afstemmen met IE Met Lexmark-werkbalk
Beheer de webpagina's vanuit Internet Explorer.