211service.com
Google e Akamai: Cult of Secrecy vs Kingdom of Openness
Non dovresti mai fidarti di questo numero, ha detto Martin Farach-Colton, professore di informatica alla Rutgers University, parlando poco più di un anno fa. Le persone ne fanno un grosso problema, e non è vero.
Farach-Colton stava tenendo una conferenza pubblica sui suoi due anni di lavoro sabbatico presso Google. Il numero che stava denigrando era nel mezzo della sua diapositiva PowerPoint:
- 150 milioni di query/giorno
La diapositiva successiva aveva qualche numero in più:
- 1.000 query/sec (picco)
- 10.000+ server
- Più di 4 tera-ops/sec al picco giornaliero
- Indice: 3 miliardi di pagine Web
- 4 miliardi di documenti in totale
- Memoria su disco di oltre 4 petabyte
Alcune persone tra il pubblico hanno iniziato a ridacchiare: i dati di Google non tornavano.
Ho iniziato a eseguire i numeri da solo. Vediamo: 4 tera-ops/sec significano 4.000 miliardi di operazioni al secondo; un server top di gamma può fare forse due miliardi di operazioni al secondo, quindi questo si traduce in forse 2.000 server, non 10.000. Quattro petabyte corrispondono a 4x1015 byte di spazio di archiviazione; distribuiscilo su 10.000 server e avresti 400 gigabyte per server, il che sembra ancora sbagliato, dal momento che Farach-Colton aveva precedentemente affermato che Google inserisce due dischi rigidi da 80 gigabyte in ciascun server.
E poi c'è quel numero di 150 milioni di query al giorno. Se il sistema gestisce un carico di picco di 1.000 query al secondo, ciò si traduce in un picco di 86,4 milioni di query al giorno, o forse 40 milioni di query al giorno se si presume che il sistema impieghi solo metà del tempo al massimo della capacità. Non importa come fai i conti, le statistiche di Google non sono autoconsistenti.
Questi numeri sono tutti incredibilmente bassi, ha continuato Farach-Colton. Google riporta sempre numeri molto, molto più bassi di quelli veri.
Ogni volta che qualcuno di Google mette insieme una nuova presentazione, ha spiegato, il dipartimento delle pubbliche relazioni controlla il discorso e riduce i numeri. In origine, ha detto, la diapositiva con i numeri diceva che 1.000 query/sec erano la frequenza minima, non il picco. Abbiamo più di 10.000 server. Questo è molto.
Proprio come il motore di ricerca di Google torna istantaneamente e apparentemente senza sforzo con una risposta a qualsiasi domanda che gli lanci, nascondendo la vera difficoltà del compito agli utenti, l'azienda vuole anche che i suoi concorrenti siano tenuti all'oscuro della difficoltà del problema. Dopotutto, se Google pubblicizzasse quante pagine ha indicizzato e quanti computer ha nei suoi data center in tutto il mondo, i concorrenti di ricerca come Yahoo!, Teoma e Mooter saprebbero quanto capitale hanno dovuto raccogliere per avere un speranza di spostare il re in cima alla collina.
A volte Google ha avuto difficoltà a mantenere la sua storia in ordine. Quando il vicepresidente dell'ingegneria Urs Hoelzle ha tenuto un discorso sui cluster Linux di Google all'Università di Washington nel novembre del 2002, ha ripetuto la cifra di 1.000 query al secondo, ma ha affermato che la misura è stata effettuata alle 2:00 del 25 dicembre. , 2001. Il suo punto, ovvio per tutti nella stanza, è che anche nel novembre 2002, Google stava facendo molto più di 1.000 query al secondo, solo quante di più, però, si poteva indovinare.
I fatti potrebbero trapelare. L'ultimo giorno del Ringraziamento, il New York Times ha riferito che Google ha superato la soglia dei 100.000 server. Se è vero, significa che Google gestisce forse la più grande rete di computer del pianeta. Il semplice fatto che possano costruire e gestire data center di quelle dimensioni è sorprendente, afferma Peter Christy, co-fondatore del NetsEdge Research Group, una società di ricerche di mercato e strategia nella Silicon Valley. Christy, che lavora nel settore da oltre 30 anni, è sbalordita dalla portata dei sistemi di Google e dalla competenza dell'azienda nel gestirli. Non credo che ci sia nessuno vicino.
È questa capacità di costruire e gestire cluster incredibilmente densi che è, come ogni altra cosa, il segreto del successo di Google. E il motivo, spiega Marissa Mayer, direttrice dei prodotti Web consumer dell'azienda, ha a che fare con il modo in cui Google ha iniziato a Stanford.
Invece di ottenere alcuni computer veloci e farli funzionare al massimo, Mayer ha spiegato a un evento di reclutamento al MIT, i fondatori Sergey Brin e Larry Page hanno dovuto accontentarsi di pezzi di seconda mano del dipartimento di informatica di Stanford. Sarebbero andati alla banchina di carico per vedere chi stava ricevendo nuovi computer, quindi avrebbero chiesto se potevano avere le macchine vecchie e obsolete che i nuovi stavano sostituendo. Così, fin dall'inizio, Brin e Page sono stati costretti a sviluppare algoritmi distribuiti che giravano su una rete di macchine poco affidabili.
Oggi questa filosofia è incorporata nel DNA dell'azienda. Google acquista i computer più economici che riesce a trovare e li stipa in rack e rack nei suoi sei (o più) data center. I PC sono ragionevolmente affidabili, ma se ne hai mille, uno si guasta ogni giorno, ha affermato Hoelzle. Quindi, se puoi acquistare solo il 10 percento in più, è comunque più economico rispetto all'acquisto di una macchina più affidabile.
Lavorare in Google, mi ha detto di recente un ingegnere, è quanto di più vicino si possa avere a disposizione una quantità illimitata di potenza di calcolo.
Il Regno dell'Apertura
C'è un'altra azienda che ha perfezionato l'arte di far funzionare un numero enorme di computer con uno staff relativamente piccolo. Quell'azienda è Akamai.
Akamai non è una parola familiare ora, ma ha fatto le prime pagine quando la società è stata quotata in borsa nel novembre 1999 con quella che era, all'epoca, la quarta offerta pubblica iniziale di maggior successo nella storia. Le azioni di Akamai sono aumentate vertiginosamente e hanno reso miliardari i suoi fondatori. Negli anni che seguirono, tuttavia, Akamai è caduta in disgrazia. Non è stato solo l'incidente delle dot-com a causare significativi licenziamenti e l'abbandono degli uffici della compagnia in California: il cofondatore e chief technology officer di Akamai, Danny Lewin, era a bordo del volo 11 dell'American Airlines l'11 settembre ed è stato ucciso quando l'aereo è precipitato nel Centro mondiale del commercio. Il morale della compagnia era devastato.
La rete di Akamai opera sulla stessa scala di complessità di quella di Google. Sebbene Akamai disponga solo di 14.000 macchine, questi server si trovano in 2.500 località diverse sparse in tutto il mondo. I server sono utilizzati da aziende come CNN e Microsoft per fornire pagine Web. Proprio come i server di Google sono utilizzati praticamente da tutti su Internet oggi, lo sono anche quelli di Akamai.
A causa della loro scala, sia Akamai che Google hanno dovuto sviluppare strumenti e tecniche per la gestione di queste macchine, il debug dei problemi di prestazioni e la gestione degli errori. Questo non è un software che un'azienda può acquistare dallo scaffale: richiedono un laborioso sviluppo interno. È, infatti, il software che rappresenta uno dei principali vantaggi competitivi di Akamai.
Sì, anche alcune altre organizzazioni eseguono grandi cluster di computer. Sia l'Ames Research Center della NASA che il Virginia Tech hanno grandi cluster dedicati al calcolo scientifico. Ma ci sono differenze fondamentali tra questi sistemi e i cluster creati sia da Google che da Akamai. I sistemi scientifici si trovano in un unico luogo, non sparsi in tutto il mondo. In genere non sono direttamente esposti a Internet. E, cosa forse più importante, i sistemi scientifici non forniscono un servizio di base a centinaia di milioni di utenti Internet ogni giorno: Google e Akamai devono garantire il 100% di uptime. È facile uscire e acquistare 10.000 computer: tutto ciò di cui hai bisogno è denaro. È molto più difficile far funzionare tutti quei computer come un unico servizio che supporta milioni di utenti simultanei.
Per essere onesti, ci sono importanti differenze tra Google e Akamai, differenze che assicurano che Google non entrerà presto nell'attività di Akamai, né Akamai entrerà in Google. Entrambe le società hanno sviluppato un'infrastruttura per l'esecuzione di sistemi massivamente paralleli, ma le applicazioni che eseguono su tali sistemi sono diverse. L'applicazione principale di Google è un motore di ricerca. Akamai, al contrario, ha sviluppato un sistema per la distribuzione di pagine Web, contenuti multimediali in streaming e una varietà di altri protocolli Internet standard.
Un'altra differenza importante, afferma Christy, è che Akamai ha avuto difficoltà a creare un modello di business chiaro e funzionante, mentre Google ha avuto un successo incredibile. Akamai ha quindi iniziato a cercare nuovi modi per vendere servizi che solo una vasta rete distribuita può fornire. Lottando per la redditività, l'azienda è alla ricerca aggressiva di nuove opportunità per la sua tecnologia. Questo potrebbe essere il motivo per cui Akamai, a differenza di Google, ha voluto essere intervistata per questo articolo.
Abbiamo iniziato con oggetti di base per la consegna dei bit, foto, banner, annunci, afferma Tom Leighton, capo scienziato di Akamai. Lo facciamo localmente. Fallo veloce. Rendilo affidabile. Migliora i siti.
Ora Akamai sta sviluppando tecniche per consentire ai clienti di eseguire le proprie applicazioni direttamente sui server distribuiti dell'azienda. Leighton afferma che 25 dei maggiori clienti di Akamai lo hanno fatto. Il sistema è in grado di gestire picchi improvvisi, rendendolo ideale per i casi in cui è impossibile anticipare la domanda.
Ad esempio, afferma Leighton, la rete di Akamai è stata utilizzata per gestire un concorso di tastiere in omaggio sponsorizzato da Logitech. Pensando che il suo concorso potesse essere popolare, Logitech ha creato una serie elaborata di regole, assicurando che solo un numero così elevato di tastiere sarebbe stato regalato a ogni stato ed entro un determinato periodo di tempo. Ma Logitech ha grossolanamente sottovalutato quante persone avrebbero fatto clic per partecipare al concorso. In passato, tali sottostime hanno causato l'arresto anomalo di eventi Internet molto pubblicizzati come il webcast di Victoria's Secret, frustrando milioni di navigatori del Web e imbarazzando l'azienda. Ma non questa volta: il concorso di Logitech si è svolto senza intoppi sulla rete Akamai.
Naturalmente, Logitech avrebbe potuto provare a costruire il sistema stesso. Avrebbe potuto progettare e testare un server in grado di gestire 100 utenti simultanei. Quel server potrebbe costare $ 5.000. Quindi Logitech avrebbe potuto acquistare 20 di quei server per $ 100.000 e metterli in un data center. Ma un singolo data center potrebbe essere congestionato, quindi potrebbe avere più senso metterne 10 in un data center sulla costa orientale e 10 in un altro data center sulla costa occidentale. Tuttavia, quel sistema poteva gestire solo 2.000 utenti simultanei: potrebbe essere meglio acquistare 100 server, per un costo totale di $ 500.000, e metterli in 10 diversi data center. Ma anche se lo avessero fatto, gli ingegneri di Logitech non avrebbero avuto modo di sapere se il sistema avrebbe effettivamente funzionato quando è stato messo alla prova e avrebbero investito un'enorme quantità di denaro in ingegneria che non sarebbe sono stati necessari dopo l'evento.
E i concorsi non sono l'unica cosa che può essere eseguita sulla rete di Akamai. Praticamente qualsiasi programma scritto nel linguaggio di programmazione Java può essere eseguito sull'infrastruttura dell'azienda. Il sistema è in grado di gestire richieste di mutui, cataloghi e carrelli della spesa elettronici. Akamai gestisce anche il backend per il servizio musicale iTunes 99 cent di Apple.
Forse perché Akamai è così orgogliosa del sistema che ha costruito, l'azienda è molto aperta sui dettagli tecnici della rete. Il suo centro operativo di rete a Cambridge, MA, ha una parete di vetro che consente ai visitatori di vedere un grande schermo con le statistiche. Quando ho visitato l'azienda a gennaio, lo schermo diceva che Akamai stava servendo 591.763 hit al secondo, con 14.372 CPU online, 14.563 gigahertz di potenza di elaborazione totale e 650 terabyte di spazio di archiviazione totale. Il 14 aprile, il numero era balzato a un picco di 900.000 visite al secondo e 43,71 miliardi di richieste consegnate in un periodo di 24 ore. (Akamai non ha rivelato il numero di CPU online perché quel numero fa parte del suo rapporto trimestrale sugli utili, che sarà pubblicato il 28 aprile. Ma non è cambiato molto, mi ha detto il portavoce dell'azienda.)
Posta e bilancia
Guardando al futuro, alcune opportunità di business hanno un'evidente attrattiva sia per Google che per Akamai. Ad esempio, entrambe le società potrebbero sfruttare la loro esperienza nella creazione di cluster distribuiti su larga scala per creare un sistema di backup di grandi dimensioni per le piccole imprese e gli utenti di PC domestici. Oppure potrebbero assumere la gestione dei PC di casa, trasformandoli in terminali intelligenti che eseguono applicazioni su server remoti. Ciò consentirebbe agli utenti di PC di sfuggire alla fatica di amministrare le proprie macchine, installare nuove applicazioni e mantenere aggiornati i programmi antivirus.
E poi c'è la posta elettronica. Il 1° aprile, Google ha annunciato che sarebbe entrato nel settore della posta elettronica dei consumatori con un comunicato stampa non ortodosso: la ricerca è la numero due dell'attività online - la posta elettronica è la numero uno: 'Diamine, sì', dicono i fondatori di Google.
Da allora, Google ha ricevuto una notevole pubblicità per il design annunciato della sua offerta Gmail (Google Mail). Il servizio gratuito promette ai consumatori un gigabyte di spazio di archiviazione della posta (più di cento volte lo spazio di archiviazione offerto da altri provider di posta Web), incredibili ricerche negli archivi di posta e la promessa che i consumatori non dovranno mai più eliminare un messaggio di posta elettronica. All'inizio molte persone pensavano che l'annuncio fosse uno scherzo del pesce d'aprile: un gigabyte per utente sembrava troppo spazio di archiviazione. Ma poiché la stragrande maggioranza degli utenti non utilizzerà così tanto spazio di archiviazione, ciò che la promessa di Google dice davvero è che Google può acquistare nuovi dischi rigidi più velocemente di quanto gli utenti di Internet possano riempirli. [ Nota dell'editore: La proposta di Google di finanziare Gmail mostrando annunci pubblicitari basati sul contenuto della posta elettronica degli utenti ha ricevuto critiche significative da una serie di attivisti per la privacy. All'inizio di questo mese un certo numero di attivisti per la privacy ha fatto circolare una lettera chiedendo a Google di non avviare Gmail fino a quando questi problemi di privacy non fossero stati risolti. Simson Garfinkel ha firmato quella lettera come sostenitore dopo che questo articolo è stato scritto ma prima della sua pubblicazione.]
L'infrastruttura di Google sembra ben adatta all'implementazione di un servizio come Gmail. L'estate scorsa Google ha pubblicato un documento tecnico chiamato The Google File System (GFS), che apparentemente è la tecnologia alla base sviluppata da Google per consentire la replica ad alta velocità e l'accesso ai dati in tutti i suoi cluster. Con GFS, l'e-mail di ciascun utente potrebbe essere replicata tra diversi cluster Google diversi; quando gli utenti accedono a Gmail, il loro browser Web potrebbe essere automaticamente indirizzato al cluster più vicino che disponeva di una copia dei loro messaggi.
Questa è una tecnologia difficile da realizzare, ed è esattamente il tipo di sistema che Akamai ha sviluppato negli ultimi sei anni. In effetti, non c'è motivo, in linea di principio, per cui Akamai non possa implementare un sistema di posta elettronica simile su larga scala abbastanza facilmente sui propri server. Nessuna ragione, cioè, se non per la filosofia dell'azienda.
Leighton non pensa che Akamai si sposterebbe in un'attività che richiedesse all'azienda di trattare direttamente con gli utenti finali. Più probabilmente, afferma, Akamai fornirebbe l'infrastruttura a qualche altra società che sarebbe in grado di eseguire la fatturazione, l'assistenza clienti e il marketing per gli utenti finali. Il nostro obiettivo è vendere nell'impresa, afferma.
George Hamilton, analista presso lo Yankee Group che si occupa di elaborazione e reti aziendali, è d'accordo. Hamilton definisce inverosimile l'idea di Google in competizione con Akamai. Ma Google potrebbe assumere Akamai per integrare le esigenze tecnologiche di Google, afferma.
Tuttavia, una tale collaborazione sembra improbabile, almeno in superficie. Google potrebbe acquistare Akamai, nel modo in cui la società ha acquistato Pyra Labs nel febbraio 2003 per acquisire il sistema di pubblicazione Web personale Blogger di Pyra. Ma Akamai, con la sua cultura dell'apertura, non sembra una buona partita per il segreto di Google. Poi c'è il fatto che il 20% delle entrate di Akamai ora proviene direttamente da Microsoft, secondo il rapporto trimestrale di novembre 2003 di Akamai. La rivalità di Google con Microsoft nella ricerca su Internet (e ora nella posta elettronica) è stata ampiamente commentata dalla stampa; è improbabile che l'azienda voglia lavorare così a stretto contatto con un partner Microsoft così stretto.
Ted Schadler, vicepresidente della società di ricerche di mercato Forrester, afferma che è possibile immaginare che le due società siano in competizione perché entrambe stanno cercando la stessa opportunità nell'elaborazione massiccia e distribuita. In questo senso, hanno la stessa visione. Devono creare gran parte della stessa tecnologia perché non esiste. Devono imparare molte delle stesse lezioni e sviluppare molte delle stesse tecnologie e modelli di business.
Schadler afferma che Akamai e Google sono entrambi esempi di quelli che chiama canali commerciali Internet programmabili. Questi canali sono aziende che offrono grandi infrastrutture in grado di offrire servizi di alta qualità su Internet a centinaia di milioni di utenti con la semplice pressione di un interruttore. Google e Akamai sono tali società, ma lo sono anche Amazon.com, eBay e persino Yahoo!. Sono tutti servizi che abilitano servizi alla base delle attività aziendali che [possono essere] scalati in modo sicuro, afferma Schadler.
Se fossi uno scommettitore, aggiunge Schadler, direi che Google è molto più interessato a servire il cliente e Akamai è più interessata a fornire l'infrastruttura: è al dettaglio che all'ingrosso. Ci saranno moltissimi di questi servizi orientati al dettaglio.
Se fosse vero, Google potrebbe trovarsi improvvisamente a competere con un'azienda che, come la stessa Google, sembrava uscita dal nulla. Tranne questa volta, quella società non avrebbe dovuto capire nessuno dei trucchi per gestire l'enorme infrastruttura stessa.
E questo spiega perché Google è così riservato.