SQL Tutorial - Full Database Course for Beginners
Inginerii YouTube dezvoltă un set de software, numit Vitess, care va ajuta bazele de date open source MySQL să funcționeze mai eficient în medii de producție foarte mari. Pentru a scrie codul, folosesc limbajul de programare Google Go.
YouTube utilizează deja o componentă Vitess, numită Vtocc, pentru a ajuta la difuzarea videoclipurilor pentru toți utilizatorii serviciului de 800 de milioane de utilizatori lunar. Google a achiziționat YouTube în 2006.
Victc a fost "foarte stabil și are toate instrumentele necesare pentru a vă folosi într-un mediu de producție", a declarat arhitectul YouTube Sugu Sougoumarane, care împreună cu inginerul YouTube Mike Solomon au discutat despre Vitess la Convenția Usenix LISA (Administrarea Sistemului de Instalare Mare), care a avut loc săptămâna aceasta în San Diego.
Această Vitess este scrisă în Go, care ar putea ajuta la validarea ideii că acest limbaj de programare relativ nou poate fi utilizat în medii de producție de mari dimensiuni. Google a introdus versiunea 1 a lui Go în luna martie.
YouTube servește mai mult de 4 miliarde de ore de videoclipuri în fiecare lună. Aproximativ 72 de ore de video sunt încărcate în serviciu în fiecare minut. În timp ce YouTube stochează toate videoclipurile sale direct pe un sistem de fișiere, utilizează MySQL pentru a stoca toate metadatele necesare pentru difuzarea fiecărui videoclip, cum ar fi preferințele utilizatorilor, informațiile despre publicitate, personalizarea țărilor și alte informații necesare.
YouTube îi place MySQL pentru fiabilitatea sa, a spus Solomon, unul dintre inginerii care au construit inițial serviciul. Are ciudățenii, dar acele quirks sunt bine-cunoscute și pot fi atenuate destul de ușor, a spus el. Cu toate acestea, MySQL are de asemenea probleme cu scalarea - cel puțin scalarea pentru a găzdui un serviciu la fel de mare ca și YouTube.
"Problema majoră cu MySQL este că odată ce ajungi la un anumit punct de utilizare, gestionarea timpului hardware și câte cazuri aveți ", a spus Solomon. "Vrem să automatizăm acea bucată. Vrem să luăm toate acțiunile care sunt complicate și predispuse la erori și să le facă să se vindece."
MySQL nu este, de asemenea, foarte eficient atunci când este utilizat într-o implementare mare. De obicei, fiecare conexiune la MySQL necesită un fir propriu pe server. Cu toate acestea, această abordare nu este fezabilă la scara operațiilor YouTube. "Desfășurarea a zeci de mii de conexiuni nu este cu adevărat viabilă", a spus Solomon.
Inginerii companiei au fost reticenți în încercarea de a schimba însăși codul de bază MySQL, observând că modificarea complexă și oarecum dificilă - înțelegerea codului poate duce deseori la efecte neașteptate. "Nu este clar ca atunci cand crezi ca stii ce faci, atunci incepe sa intri in probleme", a spus Solomon.
Deci Vitess a fost creat pentru a rula in colaborare cu MySQL pentru a oferi capabilitati suplimentare de management. Componenta Vocc, de exemplu, consolidează mii de interogări SQL primite într-un număr mai mic de loturi, astfel încât MySQL poate să ia mai puține resurse care să răspundă acestor solicitări. De asemenea, VTCc analizează interogările astfel încât acestea să poată fi executate mai eficient și reduc activitatea cauzată de interogările duplicate prin reutilizarea rezultatelor dintr-o interogare pentru a satisface celelalte cereri identice.
Utilizarea Go a permis dezvoltatorilor YouTube să fie mai productivi decât ar au folosit o limbă mai tradițională, a spus Sougoumarane.
Go code se compilează repede, a spus el. Cele 30.000 de linii de cod din Vitess pot fi compilate în binare în aproximativ 30 de secunde. Și, datorită unui set bogat de biblioteci, multe sarcini nu necesită multă programare. De exemplu, Sougoumarane a scris o rutină de 105 de linii care periodic împachetează fișiere log, funcționalitate care nu ar fi putut fi scrisă în câteva rânduri folosind C sau C ++. "Așa este Expresiv Go", a spus Sougoumarane. "Caracteristicile lingvistice sunt bine gândite și vă ajută să compuneți lucrurile într-un mod mult mai elegant decât limbile tradiționale". Sougoumarane a lăudat, de asemenea, suportul pentru concursuri Go, vital pentru utilizarea în procesoarele multicore. "Nu trebuie să vă faceți griji cu privire la gestionarea thread-urilor. Du-te gestionează-le pentru tine", a spus elLimbajul are și unele dezavantaje, a recunoscut Sougoumarane. Eroare de manipulare ar putea fi îmbunătățit, de exemplu. Programare și de colectare a gunoiului ar putea folosi ceva de lucru la fel de bine.
Solomon a spus că, în timp, Vitess va prelua sarcini suplimentare, cum ar fi replicarea bazei de date și sharding automată, astfel încât o bază de date se poate dezvolta pe mai multe servere cu nici o intervenție de la administratori.
Joab Jackson se referă la software-ul pentru întreprinderi și la știrile generale despre tehnologia generală
Serviciul de știri IDG
. Urmăriți-l pe Joab pe Twitter la @ Joab_Jackson. Adresa de e-mail a lui Joab este [email protected]
1. Google stabilește procesele de autor cu editorii, autorii și acordul Google cu editorii solicită o retragere parțială de la Harvard: procesele Google soluționate de majoritatea editorilor și autorilor care susțin că scanarea și indexarea de către companie a cărților de drept fără permisiune echivala cu încălcarea drepturilor de autor la scară masivă. Google a susținut că a fost protejat de principiul utilizării corecte deoarece numai fragmente de text pentru astfel de cărți au fost afișate pe
2. WSJ: Google și Yahoo ar putea chema toată chestia: Google și Yahoo s-ar putea retrage dintr-un pact de publicitate de căutare propusă că Departamentul de Justiție al SUA încă nu a aprobat, The Wall Street Journal a raportat vineri. Companiile au semnat acordul în luna iunie, fiind de acord că Yahoo ar difuza anunțurile de căutare Google și că ar împărți veniturile. DOJ a revizuit propunerea pentru problemele antitrust, iar companiile au convenit în mod voluntar să întârzie implementarea planu
Fujitsu a fost de acord să achiziționeze pachetul de acțiuni Siemens în cadrul companiei europene de fuziune, Fujitsu-Siemens Computers, în cadrul unei înțelegeri pe scară largă. 450 milioane euro (567 milioane dolari SUA) pentru miza de 50%. Acordul este programat să se încheie la 1 aprilie, moment în care compania va deveni o filială deținută în totalitate de Fujitsu. Până atunci, aceasta va continua să fie administrată în calitate de joint venture.
Fujitsu-Siemens Computers a fost înființată în octombrie 1 și a devenit unul dintre cei mai mari furnizori de PC-uri din Europa. Astăzi, compania operează în 36 de țări, iar în ultimul său exercițiu a înregistrat vânzări de 6,6 miliarde de euro și un profit prealabil de 105 milioane de euro.
Economii de scară în Spam Business
Noua cercetare are o abordare analitică la întrebarea "Câți fraieri au nevoie pentru a face o operație spam viabilă? "