Il modello Google, ovvero “advertising is king”
Transcript
Il modello Google, ovvero “advertising is king”
GOOGLE OK 17-05-2006 8:57 Pagina 7 SCENARI Il modello Google, ovvero “advertising is king” TIZIANA DEMARIA ROBERTO MINERVA Google è ormai sinonimo di “motore di ricerca”. L’azienda californiana ha raggiunto tale obiettivo grazie all’utilizzo dell’algoritmo di PageRank: le pagine visualizzate sono le più rilevanti rispetto all’oggetto della richiesta dell’utente. Tale algoritmo è stato la forza di Google. A partire da esso, l’azienda ha costruito una formidabile infrastruttura informatica distribuita su cui applica continuamente le tecnologie ICT più promettenti ed innovative, mantenendo così un vantaggio sulla diretta concorrenza. In conseguenza di ciò, la società californiana detiene una grossa fetta del mercato pubblicitario sul Web. Google ha coniugato abilmente la propria capacità tecnologica con la semplicità d’uso (e l’utilità per il cliente finale) e la capacità di esercitare il ruolo di broker. Google si pone fra l’utente e una larga fetta dell’informazione disponibile sul Web ed inoltre si colloca fra l’utente e l’offerta commerciale di molte aziende (link sponsorizzati) e fra aziende e siti particolarmente visitati. Tale posizione strategica deve essere continuamente rinforzata con iniziative diverse dalla sola ricerca su Internet. Per questo Google ha costruito nel tempo una ricca offerta di servizi e funzioni che permettono all’azienda di essere percepita dal mercato come un elemento innovativo. Il punto di partenza è sempre il motore di ricerca, ma con l’aggiunta di nuove funzionalità. Il rilascio di un nuovo servizio di Google (fatto per attrarre nuovi utenti e quindi nuovi consumatori di pubblicità) introduce spesso delle discontinuità nelle offerte simili dei competitori. Google sta entrando in altri mercati (ad esempio la comunicazione, le applicazioni informatiche, i media). Quando entra in un nuovo mercato, lo fa applicando il proprio business model: il brokering dell’informazione e della pubblicità. Tale approccio può introdurre forti elementi di discontinuità in mercati consolidati. L’articolo è un’analisi delle capacità tecniche di Google, del suo approccio al mercato (Business Model) e dell’offerta di servizi e funzionalità. Inoltre, si analizzano alcuni possibili scenari che potrebbero avere un forte impatto su mercati consolidati. 1. Introduzione L’obiettivo della società californiana Google è “to organize the world's information and make it universally accessible and useful”. Google ha mosso i primi passi nel 1996, quando i due fondatori Larry Page and Sergey Brin, erano studenti della Stanford University. I loro studi si focalizzavano sui motori di ricerca e sui modi per incrementare l’accuratezza e la rispondenza delle informazioni trovate alle richieste degli utenti. Nel 1998, Page e Brin pubblicano uno storico articolo [1] che descrive il nuovo motore di ricerca denomi- nato Google (nome derivato dal termine matematico googol che indica il numero uno seguito da cento zeri). La storia di Google ripercorre i passi tipici di una start up californiana: da un’idea vincente (l’algoritmo PageRank) si crea una piccola società (in un garage o addirittura nei dormitori dell’università). Poi arrivano i primi finanziamenti (prima da un Angel e poi da altri Venture Capitalist). Nel frattempo la soluzione tecnica si consolida e con essa cominciano ad arrivare sempre più “utenti”. Agli inizi anche uno dei fondatori di Yahoo (Filo) era legato da amicizia e rapporti di lavoro con Google (adesso non sappiamo … ). NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 7 GOOGLE OK 17-05-2006 8:57 Pagina 8 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” Rapidamente Google raggiunge due primati: la più GOOGLE INC CL A as of 3-oct-2005 elevata indicizzazione di 350 pagine web ed il maggior numero di utenti che utiliz300 zano il motore di ricerca. Poi 250 si introducono i programmi legati alla pubblicità (derivati 200 dall’analogo di Yahoo denominato Overture): AdWords 150 e AdSense. G oogle si avvi a co sì verso la quotazione in borsa 100 Nov04 Jan05 Mar05 May05 Jul05 Sep05 che arriva nel 2004 con un 40 grande successo al Nasdaq. 30 La società cerca da sem20 pre di coniugare una filoso10 fia libertaria e non conven0 zionale (famoso lo slogan: “You can make money without doing evil”). Tale TABELLA 1› Andamento del valore di borsa del titolo Google. atteggiamento si riscontra anche nell’atmosfera informale della sede dell’azienda: il famoso Googleplex. mini software sia hardware è partita da un lavoro I numeri dell’azienda sono “impressionanti” accademico di rilievo [1] e poi progressivamente (riportati nelle tabelle 1 e 2) e continuano a crerafforzata con scelte tecniche e sistemistiche sempre innovative (e spesso contro-corrente). scere anche grazie all’ulteriore incremento dell’ofL’infrastruttura di Google è stata, in un primo ferta di servizi dell’azienda stessa. In questo articolo analizzeremo prima la base momento, determinata dalla disponibilità di mactecnologica di Google (la sua potenza di fuoco), chine general-purpose. Tale scelta si è poi rivelata poi il business model (la capacità di essere al cenvincente ed innovativa: ha consentito di potenziare tro del mondo pubblicitario Internet) ed infine la i data center in maniera economica tanto da favopossibilità di Google di impattare su altri business. rire sia la crescita nella capacità di indicizzazione del contenuto, sia la possibilità di creare nuovi servizi ed applicazioni, sia la possibilità di integrarsi 2. La tecnologia di Google con un business model centrato su due cardini: la centralità dell’utente e la pubblicità. Il successo di Google si basa su alcune intuiNon è semplice entrare nella visione tecnolozioni tecnologiche di grande importanza che hanno gica di Google. Ciò per due motivi: la complessità cambiato (e presumibilmente continueranno a farlo) tecnologica insista nel mondo dei motori di ricerca le tecnologie dei motori di ricerca e l’intero mondo e la parsimonia e l’attenta regia con cui sono difdelle applicazioni web: fuse le informazioni1. In quest’articolo facciamo riferimento alla lette• la velocità di reperimento e la completezza delratura tecnica che si può trovare sul sito di Google l’informazione; [2] e a poche altre fonti come Wikipedia [3] e alcuni • la definizione e l’applicazione su vasta scala libri ([4], [5]). dell’algoritmo di PageRank (la valutazione di Prima di addentrarci nella tecnologia è imporimportanza di una pagina); tante notare alcuni “numeri” che scandiscono la • la profondità della ricerca delle pagine web e crescita tecnologica di Google: l’obiettivo sempre perseguito dell’indicizzazione • Dimensione dell’indicizzazione [1]. Intorno al di qualsiasi tipo di contenuto; 1998, Google sosteneva di aver indicizzato • la capacità di innovazione espressa nel mondo circa 24 milioni di siti web. Tale numero è credei sistemi e delle applicazioni altamente distrisciuto fino ad oltre 8 miliardi di pagine indicizbuite; zate! Ad esse devono essere aggiunte oltre un • la semplicità e la cura verso le interazioni con il milione di immagini, un miliardo di news su cliente (semplici User Interface); • la capacità di sfruttare a proprio vantaggio (1) (commerciale) il modello vincente della ricerca sul web. Gli stessi Brin e Page si lamentavano della scarsezza delle Il modello stesso di business di Google spinge informazioni nel loro storico articolo [1]: “Up until now most search engine development has gone on at companies with litverso la sempre maggiore profilatura dei propri tle publication of technical details. This causes search engine utenti, talvolta gestendo le informazioni personali technology to remain largely a black art and to be advertising con una certa “libertà”. oriented…”. Forse non è cambiato molto da allora. L’evoluzione tecnologica di Google sia in ter- 8 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 GOOGLE OK 17-05-2006 8:57 Pagina 9 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” Usenet, più 6600 cataloghi editoriali. Inoltre vanno aggiunti i blog, i testi universitari, le chat e le mail, … . • La potenza di calcolo. A tale massa enorme di dati da memorizzare fa da contraltare la potenza di calcolo e di memorizza zione de l si stema distribuito di Google. Wikipedia in [6] ipotizza, con riferimento ad aprile 2004 (periodo della quotazione in borsa di G oogle ) , i seg u en ti dati complessivi: - 253 THz di potenza di calcolo; - 123 Tbyte di RAM; - 4,77 Pbyte di spazio disco. Questi dati fanno di Google una superpotenza nel settore del computing a livello mondiale ([7], [8], [9]). 2.1 Il pezzo forte di Google: PageRank La base tecnologica di Google è l’al g o ri tmo PageRank2 ([1], [10]), brevetta to da ll’ univ ersi tà di Stanford: esso determina di ogni insieme di pagine iperte stua li “c onc aten ate” i l peso in termini di importa nza pe r ogni si n g o l a pagina. L’obiettivo generale è la identificazione di pagine che gli utenti finali considerano “importanti”. Nel periodo di nascita di Google (1996-1998), i motori di ricerca erano orientati a produrre liste di ricerca in maniera efficiente: il metodo usato era la determinazione dell’occorrenza in ogni pagina web di una lista di parole chiave (quelle indicate dall’utente). Con l’algoritmo PageRank, si introduce un fattore di qualità: il SITES RANKING 1 2 3 1 2 3 Top sites - Global Top sites - Italy WEB SEARCHES RANKING Top search - Global 1 - Google (57% end 2005) 45% 40% 35% 30% 25% 20% 15% 10% 3/27/01 3/26/02 3/25/03 3/23/04 Google Yahoo MSN Others Top search - USA 1 2 3 4 - Google (48.5%) Yahoo! (22.5%) MSN (10.7%) America Ondine (6.6%) REVENUES etc Revenue 2005 (full year) 6.139 Bil$ Revenue from advertising (2005) 4.973 Bil$ Ad revenues (four years) 11.2 Bil$ Ad revenues payd to hosting sites (four years) 3.9 Bil$ Number of advertisers Feb06 ~300.000 Profitability 23% - 400 Mil$ su 1578 Mil$ revenues (4Q05) Value of each employee • • • • Google 19 Mil$ Yahoo! 4.7 Mil$ Microsoft 4.3 Mil$ Telecom Italia 0.35 Mil$ USERS,HITS,SERVICES Unique users x month 94 Mil Jan06 Hits x day (estimated) ~ 3 Mil Search completed monthly (US) 2.3 Bil (Jan06) Share of search (US) 41.4% Reach (numb of users x 1Mil) Daily Reach (per million) google.com 300,000 200,000 100,000 0 ‘Services’ used on Google.com • • • • • • • • Apr Jul Google.com - 76% images.Google.com - 9% mail.Google.com - 7% groups.Google.com - 2% video.Google.com - 2% news.Google.com - 1% froogle.Google.com - 1% Other websites - 2% ‘Services’ used on Google.it • • • • • Google.it - 80% images.Google.it - 14% groups.Google.it - 3% news.Google.it - 2% Other websites - 1% Gmail users (US) 5 Mil (2) Il termine PageRank identifica il metodo (Ranking delle pagine indicizzate) ed il nome di uno degli inventori dell’algoritmo: Larry Page poi fondatore insieme a Brin di Google. - Yahoo! - Microsoft - Google - Google - Libero - Virgilio Oct 2006 Jan TABELLA 2› Alcuni dati generali su Google. NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 9 GOOGLE OK 17-05-2006 8:57 Pagina 10 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” motore di ricerca offre non solo la scansione efficiente e la costruzione di indici per parole chiave, ma anche una valutazione qualitativa delle pagine web trovate. Il procedimento è basato sull’assunzione che il “valore” di una pagina è determinato da quanti link ipertestuali puntano ad essa. Una semplice rappresentazione è la seguente: Crawler Store Server URL Server Anchors Repository URL Resolver Indexer PR(A) = PR(B) + PR(C) +PR(D) + … dove PR(n) è il valore di PageRank della pagina n. Tale semplice formula deve essere rivista in modo da “pesare” il numero di link entranti verso la pagina di cui si misura il PageRank con il numero totale di link uscenti dalla pagina stessa, in altri termini la formula diventa: Barrels Links Lexicon Doc Index Sorter Searcher PageRank PR(A) = PR(B) / L(B) + PR(C) / L(B) + PR(C) / L(C) + … FIGURA 1› Architettura funzionale di Google (figura tratta da [11]). dove PR(n) è il PageRank della singola pagina e L(n) è il numero totale di link uscenti dalla medesima pagina n. meccanismi di spoofing o cercano di alterare artifiL’algoritmo introduce anche un fattore di damcialmente il proprio PageRank. ping: si ipotizza cioè che un “navigatore web” che Tale fenomeno si è ampliato nel momento in cui segue casualmente i link di un insieme di pagine Google è diventato “IL” motore di ricerca (con oltre ipertestuali ad un certo punto si fermi. Il fattore di il 75% del mercato) ed è stato introdotto il condamping rappresenta la possibilità che tale navigacetto di pagine sponsorizzate a pagamento. tore casuale rimanga su una data pagina o “salti” Vedremo in seguito tale fenomeno e le controcasualmente ad un’altra pagina al di fuori dell’inmosse da parte di Google. sieme considerato, per esempio seguendo un bookmark. 2.2 L’architettura del motore di ricerca Google La formula per il calcolo del PageRank è dunque modificata in questo modo: Abbiamo introdotto il primo elemento di novità portato da Google. Il secondo punto importante PR(A) = (PR(B)/L(B) + PR(C)/L(C) + PR(D)/L(D) + …) per il successo di Google è la sua architettura q + (1-q)/N hardware e software. Le architetture dei motori di ricerca non sono descritte in profondità in letteradove q è il fattore di damping, N il numero tura perché rappresentano dei segreti industriali. totale di pagine dell’insieme considerato e PR(n) il Google non fa eccezione. Sebbene datato, facciamo riferimento all’articolo di Page e Brin [1] per una descrizione funzionale dell’architettura Google. In figura 1 sono rappresentate le funzioni di base del “sistema” Google. PageRank della pagina n. La generalizzazione della Uno degli elementi centrali (come in tutti i formula precedente è la seguente [10]: motori di ricerca) è la funzione di crawling delle dove pi sono le pagine in considerazione, M(pi) è l’insieme di pagine che punta a p i , L(p j ) è il pagine Web, ossia la memorizzazione in formato numero di link provenienti dalla pagina pj ed N è il compatto delle pagine del web. Tali funzioni in numero totale di pagine. Google sono eseguite da un insieme di Crawler L’algoritmo ha indubbiamente introdotto una distribuiti (rappresentati in figura 1), essi sono fortissima novità, entrando nel merito della “quacoordinati da un URLserver che assegna ad lità” della singola pagina e portando alla creazione ognuno di essi una lista di URL3 da analizzare. Le pagine sono “scaricate” e inviate allo Storeserver di liste di pagine significative dal punto di vista dell’utente. D’altra parte l’algoritmo è anche soggetto (3) a possibili manipolazioni da parte di WebMaster che vogliono far comparire il proprio sito in cima URL (Uniform Resource Locator) è una stringa di caratteri alla lista dei risultati di Google. La società ha ulte(conforme ad un formato standardizzato) che “punta” ad una riormente esteso il numero di criteri usati per risorsa di Internet (un documento o un’immagine). Un URL http, determinare il PageRank di una pagina. L’obiettivo comunemente chiamato indirizzo web, è un puntatore ad una pagina web. Esso è utilizzato dal browser per “trovare” la pagiè offrire all’utente finale risultati di valore cercando na [12]. al contempo di determinare le pagine che usano 10 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 GOOGLE OK 17-05-2006 8:57 Pagina 11 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” che si occupa della loro memorizzazione in formato compatto in un Repository. Per ogni pagina memorizzata viene determinato un identificativo unico (docID). Il Web è un ambiente molto dinamico: molte pagine sono modificate con una certa frequenza, mentre altre perdono di importanza con il passare del tempo. È necessario determinare le caratteristiche di queste pagine per evitare di mantenere nel repository delle copie obsolete. Per impostare una buona policy di crawling è necessario determinare due parametri fondamentali: la freschezza (Freshness) della pagina e la sua età (Age). Le funzioni di crawling hanno l’obiettivo (oltre al “censimento” del maggior numero di pagine possibile) di visitare le pagine del Web seguendo delle politiche che permettano di avere in memoria pagine sempre aggiornate (e di conseguenza informazioni utili all’utente) ed eventualmente nuovi link. L’obiettivo del crawler è duplice: mantenere l’indice di “freschezza” media delle pagine il più alta possibile e mantenere l’indice di età media delle pagine il più bassa possibile. Le funzioni di crawling sono abbastanza intrusive sui siti web: esse prevedono lo scaricamento di moltissime pagine e le visite ripetute ai vari siti web. Nello svolgere il proprio compito un crawler deve tener presente tali fattori per non causare danni ai siti web visitati: ci si riferisce pertanto a delle politiche “corrette” per regolare tali accessi. Tipicamente i crawler evitano di richiedere le pagine in una sequenza troppo ravvicinata (ad esempio imponendo intervalli fra connessioni successive nell’ordine di alcuni secondi) e limitano le visite allo stretto indispensabile. I crawler riesco anche a parallelizzare il lavoro di accesso e scaricamento di dati delle pagine: anche questa funzione deve essere resa poco invasiva verso i siti visitati e non deve causare il loro malfunzionamento. Le funzioni di crawling di Google (dette anche Googlebot) sono eseguite coordinando le attività del Crawler, dell’ URL ser ver, dello StoreServer e del Repository. Il passo successivo è l’indicizzazione dei documenti, ossia l’analisi sintattica dei documenti (parsing) per determinare l’occorrenza delle parole nei documenti memorizzati. Tale funzione in Google è divisa fra i seguenti server: • Indexer, esso recupera le pagine dal repository, le decomprime e le analizza sintatticamente. Ogni documento viene convertito in un insieme di Hit, ovvero viene determinato per ogni singola parola presente nel documento la sua “occorrenza”. Si costruisce un indice che specifica per ogni parola: il numero di occorrenze, la loro posizione nel documento, una approssimazione del font del documento (per catturare l’importanza della parola stessa nel documento) e se essa è in stampatello o meno. Tali informazioni sono memorizzate (in maniera distribuita) nelle Barrel. L’Indexer analizza sintatticamente anche l’anchor text ossia la forma dell’hyperlink che punta da una pagina all’altra. Tale meccanismo4 è molto utile per determinare il PageRank di una pagina. Infatti esso può esprimere (mediante le parole chiave che costituiscono l’hyperlink) il valore della pagina indirizzata. • La funzione URLrevolver determina gli URL relativi ai documenti e associa a tali URL anche l’identificativo del documento, il docID. • La funzione link è utilizzata per calcolare il PageRank dei singoli documenti. • Il sorter analizza i dati dalle Barrel e crea una lista indicizzata invertita [13] (essa permette di determinare a partire da chiave - parole della ricerca utente - quali sono i docID ed i relativi URL che contengono tali parole). Il sorter produce anche una lista ordinata per identificati univoci di parole, wordID, che puntano ai documenti e ai relativi URL. • La funzione Lexicon organizza la lista indicizzata invertita per ottimizzare la ricerca (in pratica si crea una lista di parole, circa 15 milioni, che saranno ammesse come lessico per la ricerca di pagine web). • La funzione searcher (implementata su web server specifici) usa il lexicon, la lista indicizzata invertita e la funzione PageRank per rispondere alle richieste degli utenti finali. La quantità di dati che devono essere memorizzati (tali dati vengono presi direttamente dal web) è molto grande: le strutture dati necessarie per gestire le varie funzionalità, sebbene ottimizzate, occupano una grande quantità di memoria di massa. Uno dei problemi di Google è gestire ed elaborare tali grandi masse di dati. Vedremo in seguito com’è stato risolto il problema. Un altro aspetto rilevante è la possibilità di parallelizzare le funzioni. Tale tema è centrale per il buon funzionamento del motore di ricerca e Google ha sviluppato una serie di soluzioni interessanti. Le dimensioni hanno un impatto rilevante sulla necessità di elaborare velocemente ed efficacemente i dati. Le ricerche di Google danno tipicamente risultati di valore in meno di un secondo di elaborazione. Tale risultato ha richiesto l’ottimizzazione sia della infrastruttura di calcolo e memorizzazione, sia della gestione dei dati (il Google File System), sia del modello di elaborazione distribuita utilizzato (e.g., MapReduce), sia dell’uso dei linguaggi di programmazione specializzati. Vedremo nel seguito le strategie adottate. 2.3 Il paradiso degli smanettoni: la visione sistemistica di Google La visione sistemistica di Google [7] si basa su due pilastri: • l’affidabilità è fornita via software; • il sistema è predisposto per mantenere un throughput elevato più che una elevata capacità di risposta di picco. Questa è una scommessa che Google ha giocato con un approccio estremamente innovativo: (4) Tale meccanismo è stato anche fonte di raggiri per modificare il peso di una pagina. NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 11 GOOGLE OK 17-05-2006 8:57 Pagina 12 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” l’affidabilità è garantita a livello software replicando le funzionalità su diversi server e gestendo automaticamente i fault. La struttura computazionale messa in piedi è di tipo general-purpose (“commodity PC to build a high-end computing cluster at low-end price” [7]). Per descrivere il funzionamento del sistema è utile analizzare i meccanismi utilizzati per rispondere efficacemente ad una query da parte dell’utente finale (figura 2). I passi necessari sono i seguenti: Spell checker Google Web server Ad Server Index servers Document servers FIGURA 2› Architettura query-server di Google. • Quando l’utente cerca di raggiungere la pagina iniziale www.Google.com, il browser risolve mediante il servizio di DNS 5 l’indirizzamento verso il sito. Esistono diversi cluster distribuiti per il mondo. I cluster sono un insieme replicato di macchine e dati per rispondere alle query. Ogni cluster è costituito da diverse migliaia di macchine (come detto general-purpose ). L’indirizzo IP scelto per la risposta dell’utente permette il bilanciamento di carico fra i diversi cluster. Generalmente si restituisce l’indirizzo del cluster più “prossimo” all’utente. La replicazione dei cluster è un primo meccanismo per permettere un bilanciamento di carico (le richieste sono smistate verso il cluster più opportuno) e per garantire Google contro scenari relativi a catastrofi geografiche (i cluster sono dispersi geograficamente6). • Quando l’utente sottopone una query a Google, la richiesta è inviata tramite il protocollo http verso il cluster predefinito. Tale richiesta è trattata interamente all’interno del cluster utilizzato. (5) DNS (Domain Name Server) è un sistema che memorizza informazioni associate a nomi di domini di un sistema distribuito come Internet. Esso associa al nome del dominio alcune informazioni fra cui l’indirizzo IP associato al dominio stesso [14]. (6) I siti in cui sono localizzati i cluster Google non sono di dominio pubblico. È nato un gioco: la caccia ai cluster di Google mediante l’identificazione dei diversi indirizzi IP. 12 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 Una funzione di bilanciamento di carico controlla continuamente la disponibilità dei server Google disponibili. Uno di essi si fa carico della richiesta dell’utente. • La richiesta è trattata in due fasi: - nellla prima fase il server distribuisce la richiesta su un numero di server (index server) che elaborano in parallelo. Essi hanno il compito di cercare un’associazione fra le parole chiave dell’utente e quelle presenti sulla lista indicizzata inversa. In effetti la lista indicizzata inversa è molto grande: diversi terabytes. Tale lista è suddivisa in diversi blocchi, denominati index shards, ad ogni shard è associato un insieme di macchine (su cui girano gli index server) con il compito di determinare la corrispondenza fra le parole chiave e i contenuti dei file di dati. Si realizza così un elevato parallelismo nell’elaborazione delle richieste. I file da elaborare sono in effetti replicati (normalmente il numero di repliche è pari a 3). Questo significa che i dati ed i relativi processi sono replicati. Ciò garantisce che in caso di malfunzionamenti almeno una replica dia risultati affidabili. Il risultato di questa funzione è una lista ordinata di identificativi di documenti. - La seconda fase ha il compito di risolvere l’indirizzamento della pagina web (determinare l’URL corretto) a partire dall’identificativo del documento. Tale compito è eseguito dai Document Servers. Anche in questo caso si adotta la strategia precedente: i dati sono replicati e divisi in shard, tali shard sono assegnati ad un pool di macchine su cui sono insaziati i processi che realizzano le funzioni dei Document Server. Tali Document Server hanno accesso ad una copia del Web con una bassa latenza! Al termine del processo è disponibile una lista ordinata di riferimenti (ed un sommario) alle pagine identificate. • I server Google offrono ulteriori funzionalità: controllo sintattico della query sottoposta dall’utente (ed eventuale identificazione di alternative), integrazione dei risultati della ricerca con il programma di pubblicità a pagamento di Google; • quando tutte le funzionalità sono state eseguite, un risultato descritto mediante HTML è restituito all’utente. Google distribuisce sia i dati sia i processi che operano su di essi: processi diversi operano su insiemi di dati diversi. I processi diversi non hanno bisogno di condividere o scambiarsi informazioni, ciò rende possibile un’elevata parallelizzazione del processamento: • i dati sono ordinati, essi possono essere suddivisi in pezzi e i processi possono operare efficacemente rendendo sufficientemente semplice ricomporre i risultati parziali; • data l’elevata capacità di memorizzazione ed elaborazione è possibile replicare sia i dati che i GOOGLE OK 17-05-2006 8:57 Pagina 13 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” processi. Questo permette di ottenere un’elevata efficienza dell’elaborazione anche in presenza di malfunzionamenti (tali malfunzionamenti sono statisticamente considerati dall’approccio sistemistica). Google ha costruito un’imponente rete di cluster. I numeri relativi a tale potenza di calcolo non sono noti, ma si fanno delle stime che vanno da 60mila server fino ad oltre 100mila [6]. Generalmente i server hanno a disposizione fra uno e due Gbyte di memoria RAM e oltre 80 Gbyte di memoria su disco (normali dischi con interfacce IDE). Il sistema operativo utilizzato è una versione modificata da Google di Linux7 (in particolare la distribuzione Red Hat). Ciò porta ad avere un favorevole rapporto fra costi e risorse disponibili. Un sistema fault-tolerant di uguale capacità di elaborazione e di memorizzazione avrebbe dei costi decisamente più alti. Il ciclo di rinnovamento delle macchine è minore dei tre anni: in un periodo più lungo si verificherebbero differenze tecnologie e di configurazione troppo sostanziali fra le capacità di macchine di età diverse, inoltre l’uso dei sistemi è estensivo e probabilmente il ciclo di vita di ogni singola unità è inferiore ai tre anni. Google ha anche progettato dei rack ad hoc utilizzabili per contenere dei PC general-purpose con forme definite “pizza box” (le scatole utilizzate per contenere le pizze). Tali rack permettono una densità di alloggiamento delle macchine molto elevata. Le macchine sono tipicamente connesse tramite switch Ethernet da 1 Gbit. Questo approccio non è senza conseguenze. Due sono i problemi con cui Google deve convivere: le elevate temperature dei Data Center e gli elevati consumi di energia elettrica. Tali parametri sono ben al di là degli standard attualmente offerti dai tipici data center. Pertanto Google gestisce e predispone autonomamente le proprie location. Nonostante tali problemi, l’approccio alla computazione distribuita è efficace ed ha un buon rapporto fra prezzi e prestazioni. Si osservi che le tecnologie discusse finora consentono di dire che Google ha le capacità tecniche di costruire software altamente distribuiti (è naturale che Google abbia le potenzialità di costruire dei GRID computazionali con una certa facilità8). È anche possibile per Google capitalizzare l’esperienza nella gestione di grandi quantità di memoria. Questo pone Google come un attore interessante nel possibile mercato dello storage. ha spinto i tecnici di Google a trovare soluzioni efficaci per la gestione di grandi masse di dati. Il Google File System (GFS) è stato implementato per rispondere alle specifiche esigenze del motore di ricerca [15] ed in particolare per rispondere ai seguenti requisiti: • poiché il malfunzionamento di sistemi generalpurpose è la norma, è necessario che il File System permetta la replicazione e la disponibilità dei dati in qualsiasi situazione; • i file trattati hanno grandi dimensioni rispetto alla norma dei sistemi di calcolo. È normale gestire ed accedere a file con dimensione di parecchi GB. Sarebbe difficile gestire e lavorare con un elevatissimo numero di file di piccole dimensioni. Il GFS deve permettere la gestione facile di file di grandi dimensioni (diversi Terabyte); • I file su cui si opera non sono quasi mai modificati, in genere i dati vengono aggiunti alla fine del file (operazione di append). I file tendono ad essere tipicamente read-only, e la lettura è tipicamente sequenziale. • Necessità di “rilassare” le regole degli attuali File System e introduzione di flessibilità che permettano di definire le API del File System tenendo presenti le necessità delle applicazioni. L’architettura del Google File System è rappresentata in figura 3. Essa è basata sul concetto di Cluster (ossia un insieme molto grande di sistemi di elaborazione general-purpose con dotazioni standard di RAM, CPU e memoria di massa). Dal punto di vista del GFS un cluster è controllato da un singolo Master e da molteplici ChunkServer. Ogni Controllore è implementato sul sistema operativo Linux che fornisce delle interfacce simili a quelle definite in POSIX per il controllo dei dati: create, delete, read, write. A tali primitive sono state aggiunte due ulteriori operazioni tipiche dei sistemi Google: snapshot (cioè la duplicazione immediata di un file) e record append. Application file name, chunk index GFS client GFS master File namespace 2.4 Trattare grandi quantità di dati: il File System di Google La crescita di richieste verso il motore di ricerca di Google e la volontà di “indicizzare l’indicizzabile” (8) Google propone nella sezione labs del proprio sito la funzione Google Compute: ossia la possibilità di donare cicle inutilizzati della propria CPU a favore di computazioni scientifiche. Tale modello è esattamente quello del GRID computing. (7) Le modifiche principali hanno a che fare con la gestione di file di grandi dimensioni. chunk 2ef0 Instructions to chunkserver Chunk Server state chunk handle, byte range chunk data /foo/bar GFS chunkserver GFS chunkserver Linux file system Linux file system Data messages Control messages GFS = Google File System FIGURA 3› Il Google File System (GFS). NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 13 GOOGLE OK 17-05-2006 8:57 Pagina 14 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” I file sono divisi in “chunk” di dimensione fissa (tipicamente 64 Mbyte), ognuno di essi è identificato da un Id univoco di 64 bit. Tale identificativo è assegnato dal Master quando un nuovo chunk è creato. I ChunkServer gestiscono i chunk come file linux e permettono la scrittura e lettura dei chunk sotto la loro supervisione (ad esempio permettendo la lettura dei file a partire da un certo intervallo di byte). Ogni singolo chunk è replicato s u m o l t e p l i c i ( e d i ff e re n t i ) C h u n k S e r v e r . Tipicamente il numero di repliche è pari a 3, ma esso più essere modificato a seconda delle esigenze delle applicazioni. Il Master gestisce informazioni (meta-data) relative alla risoluzione dei nome dei file, al controllo dell’accesso dei dati, all’associazione fra file e relativi chunk, alla posizione dei chunk e delle repliche. Inoltre il Master mantiene una lista di “lease” (ossia permessi per accedere ai chunk da parete delle applicazioni) e sovraintende alle operazioni di garbage collection e migrazione dei chunk fra Chunk Server diversi. Per garantire un efficiente coordinamento, il Master utilizza dei messaggi di Heartbeat per comunicare con i ChunkServer. Le applicazioni in fase di compilazione indicano le librerie del GFS che saranno integrate nelle applicazioni stesse. È interessante notare che la comunicazione fra l’applicazione ed il Master permette la localizzazione del file da utilizzare (in termini di chunk) e l’identificazione dei relativi ChunkServer da contattare. Il sistema di lease permette di implementare un efficace meccanismo per regolare l’accesso concorrente ai dati. Il Master (tramite una lease) permette ad un processo di accedere ad un chunk per un limitato periodo di tempo. La lease può essere rinnovata. Quando un ChunkServer (definito il primario) ha effettuato le modifiche può propagare le modifiche agli altri ChunkServer (quelli che gestiscono le repliche). Le modifiche non sono consolidate fino a quando tutti i ChunkServer non notificano il cambiamento. Questo meccanismo garantisce l’atomicità dell’operazione9. Il funzionamento è il seguente: un’applicazione richiede al Master la localizzazione del file e del chunk desiderato, il Master risponde indicando un identificativo di chunk. Tale informazione è salvata nella memoria cache associata all’applicazione. Tale applicazione invia una richiesta di accesso alla replica (presumibilmente quella più vicina, in modo da limitare il consumo di banda fra i nodi). La richiesta contiene l’identificativo del chunk ed un intervallo di dati da inviare. Questa seconda fase non richiede più l’intervento del Master. Inoltre le applicazioni richiedono in una singola operazione molteplici accessi ai chunk. La parte di scambio dati non è controllata dal Master, avviene direttamente fra applicativo e ChunkServer. Questo per(9) Si osservi comunque che il GFS è in grado di continuare il funzionamento anche in presenza di operazioni di memorizzazione sui chunk replicati non andate a buon fine. 14 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 mette una separazione chiara delle funzionalità e permette di avere un Master ben definito funzionalmente ed efficiente nelle operazioni. Sono state avanzate delle critiche alla centralizzazione delle funzionalità in un unico Master in termini di scalabilità ed affidabilità [16]. È però vero che le funzioni del Master sono estremamente efficienti e sono applicabili solo ai metadata (che sono memorizzati in file di piccole dimensioni). Il Master non risulta neanche essere un collo di bottiglia in quanto i client richiedono tipicamente con una sola operazione l’accesso ai dati e una volta ricevute, tali informazioni sono memorizzate in cache, limitando così il numero di interazioni con il Master. Sono implementate comunque delle tecniche di “shadowing” per supportare le operazioni del Master e per evitare perdite di dati e di elaborazione. Infine l’organizzazione semplice dei metadati permette di ripristinare velocemente il Master in caso di malfunzionamento. Lo sviluppo di GFS (Google File System) ha richiesto la modifica del kernel del sistema Linux. I problemi erano legati essenzialmente alla gestione dei dati e dei driver che controllavano dischi con interfacce IDE oppure al “lock” dei file in scrittura. Tali problemi sono stati risolti modificando il sistema operativo: “Despite occasional problems, the availability of Linux code has helped us time and again to explore and understand system behavior. When appropriate, we improve the kernel and share the changes with the open source community”. Quest’ultimo punto evidenzia la forte capacità di Google di intervenire sulle funzioni interne dei sistemi operativi e la dimestichezza del team Google con soluzioni open source. Anche questa abilità potrebbe essere un fattore decisivo negli sviluppi futuri dell’azienda. Il sistema di Master e ChunkServer è stato paragonato alle architetture ibride dei sistemi di peer to peer (in particolare ai Supernode di Kazaa) [16]. Questa è un’osservazione importante che indica come Google sia in grado di utilizzare tecnologie informatiche evolute (Hash table e distribuzione dei file, tecniche al cuore delle soluzioni peer to peer) che potenzialmente potrebbero essere applicate ad altri contesti (ad esempio la comunicazione). 2.5 L’approccio MapReduce: Google sulla via del Middleware Gli sviluppi effettuati in ambito GFS mostrano la capacità di sviluppare librerie di sistema per agevolare i programmatori nella creazione efficiente di applicazioni semplici (senza richiedere ai programmatori di risolvere problemi di sistema). Quest’approccio è stato perseguito chiaramente nello sviluppo della soluzione MapReduce [17]. Il problema che aveva di fronte Google era relativo alla necessità di sviluppare in maniera semplice delle applicazioni che trattassero quantità considerevoli di dati in un ambiente altamente distribuito (migliaia di nodi) senza costringere i pro- GOOGLE OK 17-05-2006 8:57 Pagina 15 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” il LISP. Tali modelli si prestano molto bene ad una elevata Input parallelizzazione in entrambe le fasi (Map e Reduce). Funzioni Questo modello di comM M M M M M M di Map putazione è alla base della soluzione MapReduce adotLista di Intermediate k1:vk1:vk2:v k1:v k3:vk1:v k1:vk3:v k1:v k1:vk3:v risultati intermedi tata da Google per realizzare un software (insieme di librerie) a supporto dei programFunzione di libreria MapReduce Group by Key che raggruppa in maniera ordinata matori nello sviluppo di prole liste parziali generate da Map grammi efficaci in ambiente distribuito. Le librerie, scritte k1:v,v,v,v k2:v k3:v,v k4:v,v,v k5:v Grouped in C++, sono linkate al codice sorgente in fase di compilaFunzionI di Reduce R R R R R zione o interpretazione. In figura 5 è rappresentato il funzionamento del Output Lista dei risultati finali sistema. Le invocazione di tipo Map sono distribuite su diverse macchine e contemporaneamente i dati di input FIGURA 4› Esempio di computazione MapReduce. s o no pa r t iz io na t i in un insieme di M split. I differenti split possono essere grammatori a risolvere ripetutamente i problemi elaborati in parallelo da processi in esecuzione su derivanti dalla elaborazione distribuita. Le problemacchine diverse. Le invocazioni alle funzioni matiche riguardavano la parallelizzazione delle Reduce sono distribuite in seguito al partizionacomputazioni, la distribuzione dei dati e la gestione mento dei risultati intermedi (intermediate key) in R dei malfunzionamenti sempre presenti in un gruppi usando una funzione di partizionamento sistema così complesso. Programmi all’apparenza (tipicamente una funzione hash mod R). semplici venivano complicati per gestire problemi Il compito del Master node in figura 5 è quello di relativi al sistema più che alla funzionalità prevista. tener traccia dell’esecuzione da parte delle diverse Questo ha portato alla necessità di capitalizzare in funzioni Map (i worker della figura) e di organizzare i un insieme di librerie le soluzioni adottate. Una c onsiderazi o n e è User stata importante per la defiProgram nizione di un modello com(1) fork putazionale all’inter no di (1) fork (1) fork Google, i programmi aveva no spe sso u n du pl i ce Master compito: 1) determinare l’occorrenza (2) assign (2) assign di chiavi all’inter no di reduce map una struttura dati (ad esempio l’occorrenza di worker una parola chiave in una split 0 (6) write pagina web) - rappresenoutput split 1 worker file 0 (5) remote read tabile come una funzione split 2 (3) read (4) local write di Map; worker output 2) costruire una lista ordisplit 3 worker file 1 nata di risultati di tali split 4 chiavi (determinare le pagine web che contenworker gono un insi eme di parole chiave) - rappresentabile come una funInput Map Reduce output Intermediate files zione di Reduce. files phase phase files (on local disks) La figura 4 illustra questo procedimento. Tale tipo di computazione FIGURA 5› Implementazione del modello MapReduce di Google. è ispirato ai linguaggi di programmazione funzionali quali NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 15 GOOGLE OK 17-05-2006 8:57 Pagina 16 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” risultati intermedi (salvandoli su disco) per permettere l’esecuzione da parte delle funzioni Reduce. Periodicamente i dati intermedi sono resi disponibili per l’elaborazione. Il Master notifica tale evento ai worker incaricati di eseguire le funzioni Reduce. Quando tutti i worker (Map e Reduce) hanno terminato il proprio compito, i risultati ottenuti sono passati al programma chiamante. Il Master tiene traccia (per ogni task Map o Reduce) dello stato della computazione ed identifica la particolare istanza di worker che sta elaborando la funzione. Il Master periodicamente interagisce con i worker per determinare se essi sono ancora attivi. In caso di mancata risposta lo specifico task (Map o Reduce) è riportato allo stato di “idle” ed esso può essere rischedulato per l’esecuzione di un altro worker (presumibilmente su un altro insieme di macchine). Periodicamente il Master emette un checkpoint per identificare a che punto è l’elaborazione complessiva. In caso di malfunzionamento del Master, utilizzando i checkpoint, è possibile riprendere l’esecuzione (instanziando un nuovo Master) in modo da permettere la conclusione della computazione stessa. Per permettere di risparmiare sulla banda, le funzionalità di sistema MapReduce e GFS operano congiuntamente: come visto il GFS memorizza tre copie di un chunk su macchine diverse. Il master della funzione MapReduce usa l’informazione relativa alla posizione dei dati di interesse e cerca di istanziare i worker sulle stesse macchine che contengono i dati (primari e repliche) in modo tale da ottimizzare lo scambio delle informazioni. Google considera molto soddisfacente questo approccio in quanto esso ha permesso di sviluppare velocemente programmi in grado di operare su un grandissimo numero di computer. Inoltre è stata apprezzata la facilità con la quale i programmatori (anche senza esperienza specifica su applicazioni distribuite) riescono a utilizzare il modello di computazione. Un altro aspetto interessante di MapReduce è relativo alla gestione: poiché MapReduce si fa carico di gestire il backup e i casi di malfunzionamento, è possibile limitare l’intervento umano. Google ha utilizzato a proprio vantaggio tecniche di elaborazione conosciute (MapReduce di derivazione Lisp10). La soluzione implementata permette una netta separazione fra gli scopi e le funzioni di un middleware a supporto della elaborazione distribuita (MapReduce) e le applicazioni. Questa separazione è la chiave centrale di nuovi approcci alla programmazione come proposti ad esempio dall’aspect programming [19]. Ancora una volta si nota come Google sia in grado di introdurre innovazione nel suo ambiente ricorrendo alla valorizzazione dei suoi asset (grande quantità di computer general-purpose, grandi masse di dati, ...). (10) Si noti che Lisp [18], anche se “vecchio” come linguaggio di programmazione, sta godendo di un ritrovato successo presso gli sviluppatori di sistemi distribuiti. 16 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 2.6 Un’altra sfida: il linguaggio di programmazione Sawzall Dopo aver sviluppato il middleware per l’elaborazione distribuita è naturale cercare di capire se è necessario utilizzare un linguaggio di programmazione specifico per il dominio di problema. Il team di Google (in cui spicca il nome di Rob Pike ex Bell Lab - uno dei progettisti di sistemi operativi quali: Inferno, A9 e co-autore con Kernighan di “The Unix Programming Environment”) si è focalizzato sull’utilizzo ed il miglioramento delle funzionalità di MapReduce. L’obiettivo del linguaggio Sawzall [20] è dunque quello di sfruttare il parallelismo del sistema, in seguito è diventato un linguaggio specifico per l’ambiente Google. Aggregator Filters Emitted data Sorted results Raw data FIGURA 6› Il modello di elaborazione Swzall. La definizione di Sawzall si basa su un modello molto semplice, rappresentato in figura 6. L’elaborazione è divisa in due fasi (coerenti con il modello di MapReduce): 1) l’analisi si concentra sul singolo record per determinare ed emettere i risultati; 2) i singoli risultati sono aggregati. Ciò si traduce in un linguaggio di programmazione Sawzall che elabora un record alla volta, mentre la seconda fase vede entrare in gioco un insieme di aggregatori predefiniti che processano i dati della prima fase. Le due fasi possono essere eseguite su differenti computer ed in parallelo. Sorprendentemente Sawzall è un linguaggio interpretato (e secondo le stime di Google è un linguaggio sufficientemente veloce). I dati su cui deve operare un programma Sawzall vengono prima divisi in insiemi di record. In seguito un interprete Sawzall è instanziato per ogni singolo dato (su molteplici macchine, tipicamente quelle su cui sono memorizzati i dati da processare) sulla struttura supportata da MapReduce. I risultati dell’elaborazione sono in seguito passati (mediante l’operatore emit) agli aggregatori. Le variabili locali sono create per ogni istanza di esecuzione, mentre variabili globali (ad esempio quelle per passare i risultati) sono memorizzate in tabelle. I risultati otteneuti (emitted) sono sommati in tali tabelle globali. GOOGLE OK 17-05-2006 8:57 Pagina 17 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” Google ha sviluppato un meccanismo denominato Protocol Buffer per permettere la comunicazione fra processi di dati rilevanti per l’elaborazione. In [20] tale meccanismo è paragonato ad una sorta di XML “denso” (ossia con dati codificati in binario). Il relativo linguaggio di descrizione dei dati DDL (Data Definition Language) è utilizzato in fase di compilazione per permettere ai vari processi di definire le strutture dati necess a r i e p e r l a c o m u n i c a z i o n e f r a p ro c e s s i . I n Sawzall è possibile utilizzare la primitiva proto (che permette di importare la definizione delle struttura dati destinate alla comunicazione fra i vari processi). Per problemi trattabili con Sawzall, gli autori asseriscono che il linguaggio è molto più semplice e compatto di linguaggi di programmazione convenzionali (ad esempio C++), si riporta addirittura di un fattore 10. Un programma Sawzall, dunque, definisce le operazioni da eseguire su un singolo record; non sono presenti primitive per elaborare più record. In input il programma può utilizzare il costrutto proto per decodificare i dati e la primitiva emit per inviare i dati verso l’esterno. Non esistono costrutti di linguaggio che permettano l’elaborazione di record diversi o la possibilità di influenzare l’elaborazione di un altro record. L’unica primitiva di output del linguaggio è emit. Tale operazione permette di inviare i dati elaborati ad un aggregatore esterno. Gli aggregatori sono sviluppati mediante l’utilizzo di linguaggi convenzionali. Sawzall è largamente utilizzato nell’ambito dello sviluppo delle applicazioni di Google. 2.7 E dunque? Un riassunto sulla tecnologia Google sato era dei Bell Labs e di altri centri di ricerca (IBM,PARC, …) [21]. Tale infrastruttura informatica è ragguardevole per dimensioni, ma anche per efficacia e efficienza. Essa costituisce un potente asset che permette a Google di entrare in nuove aree di business. Vedremo in seguito come Google sia riuscito a integrare il proprio sistema di analisi delle pagine web con un sistema efficace di “advertising”. Inoltre analizzeremo come Google sia entrato nell’arena dei servizi sfruttando la sua capacità di sviluppo e il potente motore di cui è dotato. In questa sezione è utile soffermarsi su una capacità generalmente riconosciuta a Google: il data mining e la sua relazione con una attività fondamentale per chi vende pubblicità come la profilatura degli utenti. Dovrebbe essere evidente che le elevate capacità di memoria e di elaborazione insite in Google permettono di elaborare grandi masse di dati. Tali dati possono essere relativi alle preferenze dell’utente. Google è stato criticato ad esempio per come utilizza le informazioni personali. Alcuni elementi interessanti sono i seguenti: • utilizzo di cookie di grandi dimensioni per ricordare le query lanciate dagli utenti (e memorizzate sul PC dell’utente); • la possibilità di attivare la funzione di Search History [22] (si veda la figura 7 per un esempio). Tale funzione ricorda le ricerche effettuate in passato dell’utente, l’ora in cui esse sono state effettuate e ovviamente le parole chiave ricercate. In pratica sono memorizzate le attività dell’utente e niente assicura che tali informazioni non siano memorizzate anche senza consenso dell’utente e utilizzate per la profilatura dei clienti stessi; • sempre più spesso Google richiede l’utilizzo di un proprio account per accedere ai servizi. La tecnologia Google è cresciuta a partire da un’idea vincente. Quella che originariamente era un sistema di elaborazione specifico confinato all’analisi sintattica ed indicizzazione di pagine web, si è Monthly search activity Daily search activity progressivamente trasfor20 mato in un ambiente larga9 8 mente distribuito capace di trattare efficacemente 3 grandi masse di dati, capace di sfruttare il paralle0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 lismo offerto da una potente Sun Mon Tue Wed Thu Fri Sat Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec infrastruttura di calcolo. Via via le tecniche di elaboraHourly search activity zione si sono raffinate ed hanno coperto i campi di 9 indagine più recenti dell’informatica: aspect pro3 gramming, modalità peer to 3 2 2 peer, parallelizzazione 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 estrema, networking, defini12 1 2 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5 6 7 8 9 zione di sistemi fault-tolerant, nuovi linguaggi di programmazione. Nel mondo FIGURA 7› Un esatratto delle statistiche relativo alle ricerche personali di Google. dell’informatica Google gioca ora il ruolo che in pas- NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 17 GOOGLE OK 17-05-2006 8:57 Pagina 18 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” Questo ha delle implicazioni notevoli sulla capacità di profilatura e sulla privacy. I flussi dati generati dall’utente sono analizzati in modo da determinare la pubblicità più adatta all’utente stesso. Tipici casi sono Gmail, il servizio di sms di Google, ... . • Anche il servizio relativo alle mappe ricava notizie interessanti da parte degli utenti. Esse sono utili ad una dettagliata profilatura. • Google fornisce degli strumenti Google Desktop e Google Toolbar che risiedono sulla macchina utente. Essi offrono preziose funzioni all’utente, ma è anche vero che forniscono preziose informazioni a Google stesso riguardo le attività e le preferenze dell’utente. In definitiva si può dire che la tecnologia di Google potrebbe permettere di ospitare facilmente una grande massa di dati sugli utenti e di effettuare una analisi dettagliata sulle preferenze degli utenti stessi. L’obiettivo potrebbe essere quello di profilare la base utenti e fornire uno strumento mirato per campagne pubblicitarie ad personam. Tutto questo per supportare le evoluzioni del business model di Google, basato sui ricavi da advertising, come vedremo più avanti. 3. Il percorso Google: iniziative in corso su nuovi servizi ed applicazioni Parafrasando il sito [23], si può dire che quando Google rilascia un nuovo servizio/applicazione [24] l’accoglienza è sempre positiva. Talvolta le reazioni vanno oltre e gli analisti dicono che l’offerta Google è una killer application a cui gli altri competitor dovranno adeguarsi. In passato questo è stato vero in alcuni casi. In effetti Google è il leader incontrastato nella ricerca [25]. In altri settori talvolta rincorre i suoi competitor, altre volte riesce a coglierli di sorpresa. Un tipico successo di Google (successo se non in termini numerici, in termini di capacità di imporre al mercato nuove regole) è Gmail. Il sistema di posta elettronica di Google è stato effettivamente diverso in alcune caratteristiche essenziali: • offriva una capacità di memorizzazione fuori dall’ordinario (un Gbyte ed in seguito due Gbyte quando i concorrenti offrivano pochi Mbyte di memoria); • la semplicità dell’interfaccia e nuove tecnologie per potenziare le Interfacce Utente (ad esempio AJAX - Asynchronous Javascript And Xml ([26], [27]) che consente di creare interfacce “ricche” come quelle di Google Earth e Gmail); • l’utilizzo del motore di ricerca per recuperare le mail. Queste funzionalità hanno effettivamente influenzato e movimentato il mercato. Inoltre l’impatto che Google ha sul mercato è più elevato rispetto ad altre offerte: una volta rilasciata la propria offerta di posta elettronica, molti sviluppatori hanno iniziato a creare nuove funzionalità basate sul servizio Google. Ad esempio sono stati sviluppati software (per esempio peer2mail, 18 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 GmailDrive) che permettono di utilizzare lo spazio offerto da Google (ed ora dagli altri concorrenti) come un repository in rete per la memorizzazione di file e documenti. Un’altra applicazione che ha creato un certo scalpore è stata quella relativa al programma G2G che utilizzava Gmail per permettere la condivisione di file fra utenti in modalità peer to peer [28]. In aggiunta Google ha spinto fortemente una tecnologia innovativa come AJAX (molto apprezzata dagli sviluppatori web), proponendola per interfacce di successo relative ai servizi di mappe e localizzazione. Questo dimostra che Google ha un grande fascino sia sulla community di sviluppatori web sia sul mercato e richiama l’attenzione anche sulle offerte che risultano poi essere simili a quelle dei competitors. In parte, dunque, si può concordare con quanto affermato da [23]: l’offerta di Google spesso cerca di colmare delle lacune dell’azienda nei confronti dei competitor. È innegabile che alcune proposte di Google sono “diverse” da quelle correnti e spesso provocano dei riassestamenti sul mercato. 3.1 Una tassonomia dei Servizi di Google Google offre ormai da diverso tempo un insieme sempre più completo e complesso di servizi [24], tool ed applicazioni. Una caratteristica dell’offerta è quella di lanciare in fase beta un servizio e valutare l’accoglienza del mercato anche per lunghi periodi. Seguendo le indicazioni di Wikipedia [29] i servizi e le applicazioni possono essere divisi nelle seguenti classi: • Funzionalità: l’insieme di funzionalità che arricchiscono la possibilità di ricerca supportata dal motore di ricerca. • Hardware: sono delle soluzioni hardware e software per permettere la ricerca in ambienti enterprise. • Programmi: sono complessi algoritmi a supporto delle attività di advertising mirato sul sito della ricerca Google e su siti esterni. • Tool: sono degli strumenti software come i toolbar che permettono un utilizzo (anche dal punto di vista informatico) delle funzionalità messe a disposizione da Google. • Download: sono dei software da installare sul proprio PC che consentono di utilizzare al meglio le funzionalità ed i servizi offerti da Google oppure permettono di utlizzare in locale nuove funzionalità. • Servizi: sono dei servizi/applicazioni che vanno al di là dell’offerta e delle funzionalità legate al motore di ricerca (anche se talvolta si appoggiano ad esso). Sebbene alcuni servizi o tool ricadono in più di una classe, la tassonomia permette di farsi un’idea sull’ampiezza dell’offerta di Google (e indirettamente dei competitors). 3.2 Le funzionalità di Google Le funzionalità di Google sono attivabili direttamente nella finestra di ricerca. Esse permettono di GOOGLE OK 17-05-2006 8:57 Pagina 19 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” calcolare il risultato di operazioni matematiche (Calculator) o effettuare conversioni monetarie (Currency Conversion), di ricercare delle definizioni per termini o concetti (Definitions). Altre funzionalità permettono di ricercare delle parole chiavi in domini prestabiliti, ad esempio ricerche nel campo musicale (Music) o cinematografico (Movies). Tale funzionalità (per il Nord America) permette anche, introducendo il C.A.P., di scoprire la programmazione nelle sale cinematografiche. La funzionalità PhoneBook permette invece la ricerca (nel Nord America) di persone o aziende fornendo come risultato l’indirizzo, il numero di telefono e la relativa localizzazione su una mappa. La funzionalità Weather a fronte dell’indicazione della località e stato degli US fornisce le indicazioni meteo della località prescelta. Al di là dell’utilità, tali funzioni danno un’idea delle capacità di calcolo e della sempre più spinta localizzazione nel reperimento delle informazioni raggiunta da Google. L’unione di questa granularità all’utilizzo delle mappe permette di avvicinare sempre più il mercato pubblicitario locale, espandendo ulteriormente le potenzialità di Google in questo settore. Le funzionalità relative alla ricerca sono ancora al centro dell’interesse di Google (anche perché sia Yahoo [30] sia Microsoft hanno annunciato di voler competere con Google nel settore della ricerca). Il motere di ricerca è lo strumento principale per poter raggiungere l’obeittivo dell’indicizzazione di tutta l’informazione prodotta. In questo senso vanno lette iniziative come Google Print, Google Scholar ed altre. Sul fronte multimediale Google Image e più recentemente Google Video indicano l’ingresso dell’azienda in un nuovo settore (anche con la vendita dei filmati). Questo tentativo spinge sempre più Google ad entrare in due campi che “contengono” la gran parte dell’informazione umana prodotta: il multimediale e la comunicazione (non esclusa la voce!) con Gmail, Google Mobile e soprattutto Google Talk. A tale interesse dovranno far seguito nuove tecnologie per indicizzare le immagine ed i concetti che essere rappresentano, oppure le tecnologie di riconoscimento vocale per determinare il contenuto informativo di brani musicali o “discorsi”. In genere Google dovrà entrare pesantemente nel campo tecnologico definito da Web Semantico. Google si sta già muovendo in questo senso (sia con l’iniziativa Big Daddy sia con servizi che anticipano il web 2.0). 3.3 L’offerta Hardware/Software di Google L’offerta Hw/Sw di Google ha l’obiettivo di portare ancora di più le funzioni di ricerca all’interno delle aziende offrendo il servizio di ricerca sui documenti ed il sistema informativo aziendale. Le offerte sono due: • Google Search Appliance permette di identificare e indicizzare fino a 500mila documenti aziendali (per un costo a partire da £ 21,000). E ssa c onsiste i n u n si stema h ardware e software (figura 8-a) per l’indicizzazione e la ricerca. Tale soluzione è gestibile ed integrabile all’interno del sistema informativo aziendale. • Google Mini (figura 8-b), offre le stesse funzionalità, ma con una capacità di indicizzazione inferiore (fino a 100mila documenti) ed a un prezzo inferiore (£ 1,995). Essa è rivolta alle piccole e medie imprese. a) Google Search Appliance Configurazioni Plug&Play per la ricerca sui sistemi informativi aziendali b) Google Mini FIGURA 8› Le offerte di Google Search Appliance e Google Mini. La linea di ricerca aziendale sarà probabilmente ulteriormente estesa mediante l’introduzione di un’applicazione desktop per la ricerca in domini confinati. Si viene dunque a tracciare una linea evolutiva che porta dalla ricerca in-the-large sul web fino alla ricerca personale sulla propria stazione di lavoro. Il tutto sempre con un’interfaccia snella e conosciuta. Google cerca, dunque, di utilizzare il suo affermato motore di ricerca per penetrare ulteriormente nel mondo enterprise. Da una parte capitalizza la propria capacità di integrare hardware e software in maniera efficiente, dall’altra cerca di applicare le proprie capacità di ricerca alle corporate. È da sottolineare che la ricerca su informazioni aziendali è leggermente diversa da quella sul Web. Il meccanismo di PageRank potrebbe non essere efficace perché gli utenti aziendali potrebbero voler ricercare informazioni con un basso Rank. Motori di ricerca più classici potrebbero dare risultati egualmente rilevanti. La struttura HW della soluzione mini [31] è in linea con l’approccio “general-purpose” adottato da Google, le specifiche tecniche sono le seguenti [32]: • Processor 2 x Pentium® III, 1.26 GHz • RAM 2 Gbyte SDRAM • Hard Disk 120 Gbyte Seagate Barracuda • Operating System UNIX • Control Panel Proprietary Administration Console • Managed Firewall included. NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 19 GOOGLE OK 17-05-2006 8:57 Pagina 20 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” Mentre la Google Search Appliance [33] potrebbe avere una configurazione come la seguente [34]: • Operating System: RedHat Linux. • Quad 2.66 GHz Intel Xeon • 12 Gbyte of RAM • Five 250 Gbyte Western Digital EIDE drives. In conclusione, anche l’offerta enterprise di Google valorizza e fa leva sulla struttura hw/sw del potente motore di ricerca. 3.4 I programmi Google I due principali programmi di Google sono i ben noti AdWords e AdSense (figura 9). A tali programmi commerciali Google ha aggiunto alcune iniziative sociali che possono essere consultate presso il sito www.Google.org. AdWord, AdSense e EPC Payout sono algoritmi proprietari (le scatole grigie della figura 9) di cui niente è noto al di fuori di Google. Costituiscono il cuore dell’articolato sistema di gestione degli annunci pubblicitari [35], sia sul sito della ricerca Google che sui siti dei Web publisher; tali algoritmi sono costantemente rimessi a punto per migliorarne la profittabilità. 3.4.1 AdWords Google determina l’ordinamento degli annunci da mostrare sulla base di un insieme di parametri: • la puntata dell’advertiser: gli advertiser specificano sia le puntate sulle singole keyword, sia i valori massimi di spesa giornalieri/mensili. Per le puntate sulle keywords possono specificare sia un matching esatto che esteso (broad). Spesso gli advertiser puntano valori diversi per annunci che appaiono sulle pagine dalle ricerche Google piuttosto che sulle pagine dei siti esterni (più alto nel primo caso: i click associati ad una ricerca dello user ‘valgono’ di più); • il predicted Click Through Rate (pCTR) dell’advertiser: il CTR è il numero di click su un annuncio diviso il numero di volte che l’annuncio viene visualizzato (impression); quanto più questo valore è prossimo a uno, tanto più l’advertiser è considerato profittevole, poiché aumenta la probabilità di Google di ottenere revenues dalla visualizzazione dei suoi annunci; Google perfeziona il valore di pCTR sulla base probabilmente della history di ciascun advertiser e di analisi statistiche; • la Quality: data da vari fattori tra cui la rilevanza del testo dell’annuncio, statistiche di prestazione delle keywords, … . L’ammontare associato da AdWords all’annuncio nel ranking finale, che rappresenta quanto l’advertiser dovrà pagare a Google se l’annuncio verrà cliccato (Pay-per-click), sarà un valore minore o uguale di quanto puntato dall’advertiser, e pari al minimo valore necessario all’advertiser per mantenere la sua posizione nell’ordinamento (smart pricing). È l’algoritmo di advertising che fornisce il ranking degli annunci proposti dagli advertiser, che ‘puntano’ su specifiche keyword; gli advert i s e r s p e c i f i c a n o l a l o ro intenzione di far comparire l’annuncio solo sulle Publishers’ Google search pagine dei risultati delle Web pages results pages ricerche Google o anche sui siti di Web publisher; in Annunci quest’ultimo caso possono USERS AdSense applicare il site targeting, click click identificando singoli siti o gruppi di siti su cui far AdWords comparire i propri annunci. AdSense AdSense click click click Inoltre, Google ha recenteGoogle AdSense mente introdotto il demoAdWords ADs ADs graphic site selection, cioè la possibilità per gli adverKeywords AdSense EPC •Keywords AdWords Advertisers Ads tiser di specificare il target Bid Payout Ranked •ADs demografico (sesso, età, •Content Keywords fascia di reddito) dei propri •Ads’ format Σ AdWords annunci, cui Google assoAdSense clicks cia un insieme di siti idoWeb publisher nei per quel target. Gli advertiser possono anche richiedere di applicare cri% paid to publisher for each teri di geo-targeting, cioè AdSense click richiedere che le inserzioni $ pubblicitarie siano $$ $ mostrate in relazione alla localizzazione (o al linguaggio) dell’utente che FIGURA 9› Sistema di gestione degli annunci pubblicitari con AdWords, AdSense e EPC Payout. effettua una ricerca o che visita un sito. 20 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 GOOGLE OK 17-05-2006 8:57 Pagina 21 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” 3.4.2 AdSense È l’algoritmo che supporta i Web publisher nella selezione degli annunci (tra quelli gestiti da Google con AdWords) che sono rilevanti in relazione al contenuto delle pagine Web del proprio sito. I publisher forniscono ad AdSense le keyword su cui ricercare gli annunci (e anche quelle bloccate), il formato degli annunci (dimensioni, testo, …), gli advertiser che intendono bloccare (e.g. siti competitor), e altre info; AdSense confronta ed associa le richieste del publisher, cui applica una serie di elaborazioni (e.g. per tenere conto di fattori quali la gestione di keywords associate a diversi tipi di contenuti sulla stessa pagina, o applicare filtri su contenuti inopportuni), con i ranking forniti da AdWords, e produce un insieme di annunci da mostrare sul sito del publisher. Se l’annuncio viene cliccato, parte delle revenues vanno a Google parte al publisher. 3.4.3 EPC (Earning Per Click) Payout È l’algoritmo che determina la percentuale di revenues, associate ad un click dell’utente su un annuncio mostrato su un sito esterno che va al publisher del sito (e quindi quella che rimane a Google); è un algoritmo fondamentale, alla base del successo dell’intero sistema AdSense: se Google paga troppo ai pubblisher, le sue revenues diminuiscono sensibilmente, se paga troppo poco, la qualità dei publisher diminuirà, e quindi anche la probabilità di Google di ricavare soldi dalla pubblicità su siti meno visitati. Il calcolo è basato su diversi parametri, tra cui l’ammontare del bid, il CTR (Click Through Rate, che è un indice della ‘bontà’ dell’annuncio), il numero di impression, il ‘valore’ dei publisher, … , ma il mix di questi valori non è noto. Il più basso payout calcolato è del 20% del bid (il più basso AdWord bid è di 0.05 $, il più basso AdSense payout registrato è di 0.01 $); i premium publisher ricevono invece percentuali molto più alte, forse fino all’80%. Da questa rappresentazione risulta evidente come i fattori che possono influenzare i ricavi di Google, dei publisher e, indirettamente, degli advertiser, in questo articolato sistema siano davvero tanti; per incrementare le proprie revenues Google può cercare di aumentare il CPC (Cost per Click) ad esempio attirando più advertiser, o advertiser disposti a spendere di più, o di ampliare la copertura (più publisher, più ricerche sul proprio sito, corrispondenza più lasca delle keyword,…), o di migliorare il CTR con annunci più rilevanti (per esempio che tengano conto di abitudini e preferenze dell’utente che sta facendo la ricerca o navigando su un sito) e meglio proposti, e così via. 3.4.4 Accesso ai programmi Per fruire di questo sistema di placement degli annunci pubblicitari, gli advertiser e i publisher devono creare un proprio account online rispettivamente su AdWords (https://adwords.Google.com/select/) e AdSense (https://www.Go- ogle.com/adsense/). Accedendo con il proprio account gli advertiser potranno creare il testo dei propri annunci, selezionare le keyword cui associarlo, selezionare un budget giornaliero e il massimo CPC, rivedere la propria storia di annunci, …; i publisher potranno personalizzare il formato degli annunci che compariranno sul proprio sito, indicare le keyword su cui fare la selezione degli annunci, … . Esiste inoltre una beta release del servizio di AdWords API che consente agli sviluppatori di interagire direttamente con il server AdWords, per creare applicazioni da offrire agli advertiser e a terze parti, per gestire in modo più efficiente, efficace e creativo i loro account AdWords e le loro campagne pubblicitarie. Ad esempio le applicazioni potrebbero generare automaticamente le keyword e il testo degli annunci, o integrare i dati forniti da AdWords con database degli advertiser, o fornire strumenti che agevolino la gestione di vasti account, e così via. 3.5 I Tool di Google In questa categoria includiamo: • Google Language Tool, gli strumenti (disponibili presso [36]) utili per la ricerca di pagine in una lingua specifica, la traduzione di pagine web oppure la traduzione fra lingue diverse. • Google Reader, è uno strumento messo a disposizione per leggere e gestire i news feed. È contraddistinto dalla semplicità dell’interfaccia e dalla possibilità di ricercare nuove fonti di notizie. • Google Sitemap, un insieme di funzionalità che permette ai webmaster di creare un file che contiene l’indicazione degli URL presenti nel sito (una specie di indicizzazione) utile per la funzione di crawling del motore di ricerca. • Google Web API, l’insieme di interfacce programmatiche (API) offerte per permettere la costruzione di nuove applicazioni a partire dalle funzioni di ricerca. • Google Code, l’insieme di codice e progetti open source proposti da Google. Di particolare rilevanza risultano gli ultimi due tool. Infatti mediante le Google APIs è possibile sviluppare nuove applicazioni. Google fornisce dei suggerimenti in tal senso: sviluppare applicazioni per monitorare la disponibilià di nuove informazioni su tematiche di interesse, inventare un nuovo gioco on-line, creare una nuova interf a c c i a u t e n t e , i n t e g r a re l o s p e l l - c h e c k e r d i Google all’interno di una applicazione, ... . Google mette a disposizione un Software Development Kit (SDK) scaricabile previo registrazione. Un’applicazione sviluppata con Google Web API ha a disposizione circa 1000 r i c h i e s t e g i o r n a l i e re i n f a s e d i e s e c u z i o n e . Google è uno dei pochi motori di ricerca che mette a disposizione tali funzionalità mediante API (l’altra significativa eccezione è Technorati, un motore di ricerca che esplora prevalentemente i blog a carattere tecnologico). NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 21 GOOGLE OK 17-05-2006 8:57 Pagina 22 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” Google Code [37] è un’altra iniziativa interessante: essa permette di accedere sia ad API, sia a librerie di programmi, sia a tool a supporto dell’elaborazione distribuita in ottica Open Source. In termini di API è importante notare, come già evidenziato nella sezione precedente, che Google mette a disposizione anche delle API per permettere a programmi utenti di interagire con il proprio account su AdWords. Dal punto di vista delle librerie è interessante la possibilità di utilizzare le librerie Libjingle che sono la base per la soluzione peer to peer GTalk (il sistema di comunicazione anche VoIP di Google). Tale libreria potrebbe assumere la stessa importanza (arricchimento funzionale dell’offerta GTalk) delle API messe a disposizione da Skype. Esse possono utilizzate dagli utenti per creare nuove funzioni nell’ambito di del sistema di comunicazione peer to peer. In termini di codice sorgente, si nota la disponibilità di Google a condividere risultati tecnici di un qualche interesse relativi a tecnologie utilizzate sia nei motori di ricerca (ad esempio il progetto relativo alla Sparse Hashtable) sia in fortunate soluzioni quali le “mappe” (si veda per esempio il progetto relativo a AJAXSLT11). In questo contesto va inserito il già citato Google Compute e le sue relazioni con la tecnologia GRID (Global Resource Information Database). Da un’analisi, anche solo funzionale, del codice rilasciato si può intuire ancora una volta la capacità di Google di creare o sfruttare nuove tecnologie e la padronanza nel loro utilizzo: tali tecnologie spaziano dai web services, al peer to peer alla computazione GRID! L’offerta complessiva di Google in termini di API dimostra la capacità di Google di fornire soluzioni hardware e software in linea con l’architettura dei web services e più in generale delle architetture SOA (Service Oriented Architecture). Specialmente il caso di AdWords permette di “intravedere” dietro le interfacce programmatiche una sorta di service delivery platform. 3.6 I Download di Google Google sta estendendo il numero di software che possono essere scaricati dal proprio sito. Inizialmente era possibile scaricare il Toolbar (uno strumento integrato nei Browser Explorer e FireFox che consente di lanciare velocemente le ricerche, accedere ad alcuni servizi Google (blog, mail, …), bloccare alcune pagine che contengono script potenzialmente pericolosi, ed altre funzionalità) e il Desktop (un applicativo che permette la ricerca nel proprio sistema di parole chiave su file, mail, ... . Esso permette anche di visualizzare le proprie foto e di ricevere news da varie fonti). (11) AIAX è la tecnologia alla base della possibilità di utilizzare mappe o generalmente elaborazioni grafiche che “ricordano” alcuni degli stati precedenti. Tale tecnologie è una delle cause del successo di Google Map e Google Earth. 22 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 In seguito l’offerta software di Google si è estesa notevolmente: prima introducendo software per la gestione di mappe (Google Earth), per l’instant messaging e per la comunicazione (Google Talk) e per la gestione delle proprie immagini digitali (Picasa), poi offrendo anche software di terze parti quali Mozilla Firefox, Norton Antivirus, AdAware Personal (anti-spyware), Adobe Reader 7, Real Player e l’Instant Messanger Trillian. Inoltre tale offerta è estesa ulteriormente con addizionale software Google (come ad esempio il Google Video Player) e con la funzionalità di controllo degli aggiornamenti automatici. La disponibilità di tali software, unita alla competenza di Google nei sistemi Open Source Linux e alla sensibilità di Google per l’iniziativa del MIT per il “PC da 100 dollari” ha fatto nascere le voci riguardanti lo sviluppo e l’offerta di un package completo che comprendesse sia il sistema operativo Linux che la suite per il lavoro personale OpenOffice. Tale pacchetto applicativo sarebbe stato alternativo all’offerta imperante di Microsoft per il PC ed i Laptop. Sebbene tale iniziativa non sia stata perseguita, è indubbio che Google sia potenzialmente in grado di offrire un simile package. Più recentemente si è sparsa la voce invece di un’acquisizione da parte di Google di Sun [38]. Questa operazione porterebbe Google ad avere una valida piattaforma tecnologica adatta a sostituire la piattaforma Microsoft. Molti analisti vedono questa acquisizione come un potenziale errore da parte di Google: legherebbe la società ad una specifica piattaforma hardware/software (piattaforma ritenuta da alcuni obsoleta). 3.7 I Servizi Google I servizi Google comprendono un ampio ventaglio di offerta. Essi sono tipicamente caratterizzati da qualche forma di innovazione rispetto ad altre offerte (tipicamente precedenti e consolidate). La lista dei servizi è molto lunga ed eterogenea. In figura 10 è illustrata una specie di tassonomia per tali servizi. Nella definizione dei servizi, Google ha sempre cercato di valorizzare la sua potenza nella ricerca e la propria disponibilità di memoria. L’esempio più noto è il già citato Gmail che ha preso di sorpresa il mercato della e-mail. Un altro esempio interessan te è rela t iv o a Go o g le ba s e (http://base.Google.com), un’iniziativa che tende a far concorrenza a fornitori di annunci classificati (ad esempio: Craig’s List, http://www.craigslist.org/) e, se associato alla annunciata disponibilità di mezzi di pagamento GBuy, alla accoppiata Ebay e PayPal. La grande disponibilità di memoria, l’accesso free al servizio, la familiarità dell’interfaccia rendono il servizio attraente per una larga fetta del mercato internet in questo settore. Dal punto di vista tecnico, la soluzione introduce la novità di permettere la strutturazione delle informazioni in modo da rendere la ricerca on line più semplice (una versione semplificata di tecniche relative al semantic web). GOOGLE OK 17-05-2006 8:57 Pagina 23 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” NASA, è possibile visualizzare i luoghi anche in tre Google Bookmarks, Answers, dimensioni. La disponibilità Blog Search, Book Search, Trading Services di interfacce programmative Catalogs, Directory, Images, Local, Personalized Search, Scholar, di Google Earth ha perSearch History, Special Searches, messo la creazione di una Suggest, University Search, Video, Personal Web Search, X larga community di svilupInformation Services patori e la nascita di nuove Google EPayments Gbuy, Analytics, Base, iniziative e servizi legati a Catalogs, Froogle Calendar (CL2), Gmail, Google Earth (si veda ad Groups, Writely (to come) esempio [41]). La visualizzazione delle mappe fa largo uso della tecnologia AJAX. Local, Maps, Mars, Google Analitics è una Moon, Transit Trip Blogger, Orkut soluzione gratuita per perSocial Software Planner mette di collezionare e analizzare il traffico e statistiche Google Bookmarks, dettagliate di un sito web. Il GTalk, Mobile, Finance, News, Page principale obiettivo è quello SMS Creator, Personalized Homepage, Suggest di permettere ai gestori dei Local & Maps Services Comm. Services siti di ottimizzare le proprie Information & News Services campagne pubblicitarie in modo da capire chi sono i CL2 sta per calendario. è una possibile iniziativa di Google per fornire un calendario in rete (si veda [39]). visitatori, da dove provengono e cosa cercano. Tale software (sviluppato dalla società Urchin Software) è FIGURA 10› Universo dei servizi Google. uno strumento che potrà attrarre molti utenti ad utilizzare i programmi pubblicitari GTalk è un applicativo che potrebbe fare condi Google. La disponibilità gratuita non potrà che correnza a Skype e ad altri “messengers”. È inteaumentare l’interesse verso le offerte di Google. ressante notare come la diffusione dell’applicativo I servizi di Google Mobile, seppur semplici sia stata promossa dall’accoppiamento con Gmail (ricerca in rete e Gmail e GTalk per utenti norde, quindi, veicolata mediante una politica di inviti. americani), rappresenta un importante ingresso nel Ciò ha destato una certa curiosità intorno all’iniziamondo mobile. L’accordo con RIM per portate tiva e ha permesso la costruzione di una base di GTalk su Blackberry [42] offre la possibilità di utenti potenzialmente molto attiva12. Dal punto di diventare competitor di fornitori di soluzioni di IM e vista tecnico, la soluzione di GTalk è basata sul VoIP per il mondo mobile, un mercato sicuramente protocollo XMPP [40] (sviluppato da Jabber e poi appetibile per Google. standardizzato in ambito IETF per supportare le Recentemente Google ha acquisito la società funzionalità di presence e instant messaging). Ciò Upstartle che produce Writely [43], essa è speciadifferenzia ancora una volta Google che ha adotlizzata nella condivisione via Internet di documenti tato un protocollo basato fortemente su XML, focatestuali. Questa acquisizione è probabilmente un lizzato su IM ma utilizzabile anche come protocollo tentativo di Google di entrare nel campo della prodi segnalazione per il VoIP. Google ha già lavorato duttività personale (ad esempio anche mediante la per rendere interlavorante la propria soluzione VoIP fornitura di servizi di Calendar [39]). L’ingresso in con le infrastrutture basate su SIP, inoltre sta perquesto mercato potrebbe essere rafforzato dall’acseguendo la politica di rendere GTalk compatible cordo in essere con Sun se esso fosse relativo con vari messenger per il servizio di IM. In seguito anche alla suite di produttività personale all’acquisizione di Google del 5 % di AOL, sembra StarOffice. che sia possibile una maggiore integrazione di Anche nel caso dei servizi, si può notare una GTalk con le offerte AOL, magari potenziando il forte attenzione al cliente e la sempre più pressoftware open Source GAIM (che permette l’interosante richiesta di “registrazione” dell’utente. perabilità fra diverse soluzioni IM). Questo permette di ottenere importanti informaGoogle Earth è stata un’altra iniziativa di suczioni di profilatura e tenere l’utente “all’interno”del cesso: originariamente sviluppato da una società proprio sistema di advertising. Alcune critiche a acquisita in seguita da Google, Keyhole, ha ragGoogle sono venute per un supposto uso spregiugiunto una larga diffusione. Esso si basa su un dicato della profilatura (lettura del contenuto delle modello digitale per la cartografia sviluppato dalla Mail e di SMS). Come visto l’offerta dei servizi Google, anche (12) se non particolarmente diversa da quella dei competitor, introduce spesso elementi di discontinuità. Un utente che invita un amico avrà presumibilmente anche interesse a parlare o “chattare” con lo stesso. L’attenzione che suscita sempre ogni annuncio Search Services NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 23 GOOGLE OK 17-05-2006 8:57 Pagina 24 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” Google pone la società in una posizione di leader di mercato per le offerte dei servizi Internet. Dal punto di vista tecnologico le scelte di Google pongono la società come uno dei maggiori player del web 2.0 [44]. 4. Il business model di Google 4.1 “Advertisers pay; service is free”. È il principio alla base del business model di Google, che deriva la maggior parte del suo fatturato da diverse forme di attività pubblicitaria; nel 2005 su 6.139 Bil$ di ricavi dichiarati da Google (4Q05 Financial Results), 4.973 Bil$ sono, secondo una stima Yankee Group da attribuirsi alla pubblicità nelle sue varie forme; la rimanente parte di ricavi è da attribuirsi principalmente alla commercializzazione di prodotti Google (Search appliances & Desktop) alle aziende. Google utilizza la search based advertising, che consiste nel pubblicare gli annunci (sponsored link) sulle pagine dei risultati generati sul proprio sito; gli annunci vengono selezionati in base alle parole chiave utilizzate per le ricerche, tramite l’applicativo Google AdWords. Gli inserzionisti (circa 300.000 a inizio 2006) partecipano ad un meccanismo d’asta: in base alla loro ‘puntata’ su una specifica parola chiave, e ad altri parametri introdotti da Google, viene definita la posizione delle inserzioni nella pagina dei risultati; l’importo definito dall’asta verrà addebitato all’inserzionista solo nel momento in cui l’annuncio viene cliccato (pay per click). Una seconda forma di attività pubblicitaria prevede l’esposizione di inserzioni correlate al contenuto editoriale delle pagine che le ospitano (content based advertising): i publisher di siti Web di qualsiasi tipologia e dimensione supportano la pubblicazione, tramite l’applicativo Google AdSense, di annunci pubblicitari gestiti da Google; Google applica lo stesso meccanismo d’asta del search based advertising verso gli inserzionisti (il programma AdWords), questa volta utilizzando come parole chiave quelle estratte dai contenuti delle pagine ospitanti, dopo aver applicato le opportune contestualizzazioni e filtri. L’importo pagato dall’inserzionista quando l’annuncio viene cliccato va in parte a Google in parte al publisher che ospita l’annuncio sul proprio sito Web. Questo meccanismo consente ai publisher di ottenere revenues semplicemente grazie al traffico sul proprio sito e ai click dei navigatori sugli annunci pubblicitari; è evidente che il numero di click sugli annunci sarà tanto più alto quanto più è accurato il meccanismo di associazione degli annunci al contenuto delle pagine ospitanti. Su un totale di 11.2 Bil$ di fatturato per advertising negli ultimi quattro anni, 3.9 Bil$ sono stati ‘girati’ ai publisher dei siti ospitanti le inserzioni pubblicitarie. Un particolare caso di content based advertising è quello che prevede di contestualizzare gli 24 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 annunci sulla base dei contenuti delle interazioni tra utenti di servizi on-line: Google la applica ad esempio al suo servizio Gmail di posta elettronica, o al servizio Google Talk di Istant Messaging e VoIP. Quando un utente si connette con il proprio account Gmail, Google visualizzerà annunci mirati e altre informazioni collegate presenti nel suo vasto database, sulla base di una elaborazione, completamente automatizzata, dei contenuti delle email. Gli inserzionisti ricevono un resoconto del numero di visualizzazioni dei loro annunci e di click per annuncio, mentre non ricevono nessuna informazione personale sull’utente che ha visto il messaggio pubblicitario. Gmail è finito nel fuoco delle polemiche per aspetti di violazione di privacy per l’inserimento delle inserzioni pubblicitarie nelle pagine delle mailbox. La pubblicità ospitata sul proprio sito genera il 56% dei ricavi di Google (4Q05 Financial Results); i ricavi dal mercato internazionale rappresentano il 38% del totale (di cui larga parte, il 14%, costituito dal mercato UK). 4.2 C’è un broker in rete: il suo nome è Google Il motore di ricerca Google ha assunto sempre più spesso un ruolo di intermediazione. Si frappone fra l’utente e l’offerta informativa presente sul web. Gli utenti chiedono a Google di trovare contenuti, notizie, prodotti, persone. Google è il Broker per eccellenza nella relazione fra utenti e siti web (figura 11). Utenti Offerta diretta di Google Siti Web Google come un Broker di informazioni Blogs, News... FIGURA 11› Il ruolo di broker di Google. A ciò si possono sommare i due programmi di advertising AdWords e AdSense. Tramite essi Google riesce a generare la maggior parte dei propri ricavi. Ancora una volta Google gioca il ruolo di broker: broker dell’offerta pubblicitaria. Con Adwords, Google intermedia fra utenti e siti: i siti GOOGLE OK 17-05-2006 8:57 Pagina 25 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” pagano per far comparire le proprie pubblicità ed i propri link nei risultati di ricerca. È Google che detiene la “ownership” dell’utente (i siti non sanno chi è l’utente). Con AdSense, Google è il broker fra i siti web e gli inserzionisti pubblicitari. È Google che sceglie e determina la pubblicità che comparirà sui siti. Con l’offerta relativa alla copertura WiFi di San Francisco, ancora una volta Google giocherà il ruolo di intermediazione: permetterà l’accesso al web in modalità nomadica. Gli utenti dovranno solo accettare un pò di pubblicità (quasi una ripetizione del modello della tv broadcast). In figura 12 (tratta da [45]) sono illustrati i flussi economici fra gli attori coinvolti nei programmi AdWords e AdSense. MorganStanley 04 Media Metrics 04 Newspapers 65 Direct Mail 51 51 Broadcast TV 45 43 Radio 20 19 Cable TV 18 17 Magazine 21 12 Yellow Pages 15 Internet TOTAL 57 10 9.6 245 209 TABELLA 3› Distribuzione della pubblicità in US nel 2004. New and returning site owners purchase AdWords Buy AdWords Some site owners use a portion to purchase more AdWords Display relevant AdSense to visitors Visitor clicks AdSense advertiser These go to site owners (content providers) These stay with Google FIGURA 12› I flussi economici dei programmi AdWords e AdSense [45]. 4.3 Il mercato della pubblicità on line Il mercato della pubblicità on line, alla base del modello di business di Google, ha enormi potenzialità di sviluppo: molte grandi aziende infatti stanziano ancora per la pubblicità su Internet meno del 5% del loro budget di marketing (in tabella 3 sono mostrati dati US relativi alla distribuzione pubblicitaria del 2004), sebbene il costo della pubblicità che utilizza un motore di ricerca sia più basso di tutte le altre modalità – pagine gialle, posta -, e lo strumento sia più potente ed efficace di molti altri. Inoltre gli utenti spendono più del 30% del tempo che dedicano ai media navigando sul Web (un recente sondaggio in UK ha rilevato che un utente medio passa sul Web più tempo che davanti alla TV, 164 minuti al giorno, contro i 148 passati davanti alla TV). I trend di mercato del marketing basato sui motori di ricerca sono in forte crescita: in Europa è previsto un aumento dai 1400 milioni di euro del 2005 (65% in più rispetto al 2004) a 3 miliardi di euro del 2010 (stime Forrester [46]); per il mercato dell’online advertising nel suo complesso, che include il search based advertising, il content based advertising, l’email marketing, varie forme di behavioural advertising (advertising basato su profili e comportamenti dell’utente on line), è prevista una crescita ancora più significativa, con un valore, per l’Europa, di 9 Bil euro al 2010; molte di queste forme di pubblicità online sono già supportate da Google, altre sono in via di sviluppo/perfezionamento. I dati dimostrano inoltre che il mercato dell’online advertising è un business molto redditizio: gli utili conseguiti da Google nell’ultimo trimestre hanno raggiunto i 400 Mil$ su 1578 Mil$ di vendite, attestandosi su una percentuale del 24%. I business della ricerca e della pubblicità online sono quindi un settore di grande interesse, e sebbene Google detenga al momento una posizione dominante (40% del mercato delle ricerche negli Stati Uniti, 57% del mercato mondiale; 69% dell’utenza Internet mondiale raggiunta dai messaggi pubblicitari gestiti con AdSense), molti sono i competitor sulla scena per contendersi il primato della società di Brin e Page: dagli ‘storici’ Yahoo e Microsoft, a piccole startup che propongono soluzioni tecnologiche innovative per la ricerca, a player nuovi del settore, quali i Telco: significativa la recente iniziativa di France Telecom e Deutsche Telecom, supportata addirittura dai Governi dei rispettivi Paesi, per lo sviluppo congiunto di un motore di ricerca multimediale (Quaero) in grado di indicizzare anche pattern non testuali, e basato su tecnologie più avanzate di quelle utilizzate da Google e Yahoo, che possa minare il dominio statunitense delle ricerche online. 4.4 L’evoluzione del modello: lo user profiling come asset vincente Per mantenersi ben saldo in cima alla classifica, nel contesto sempre più competitivo, Google ha recentemente iniziato un percorso per incrementare i propri asset e rendere più articolato il suo NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 25 GOOGLE OK 17-05-2006 8:57 Pagina 26 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” modello di business, anche se gli obbiettivi rimangono sostanzialmente gli stessi degli esordi, e cioè: • aumentare il numero di utenti (oggi sono 94 milioni al mese, con 3 milioni di click al giorno su Google) dei propri servizi, e quindi attirare più advertiser; • rendere più redditizi tali utenti, cioè migliorare il rapporto tra numero di utenti dei servizi e numero di click sui link sponsorizzati, e quindi ricevere più soldi dagli advertiser. L’asset che ha determinato l’iniziale successo di Google era fondamentalmente l’efficacia del suo motore di ricerca, come ampiamente discusso all’inizio di questo articolo, che lo rendeva più appetibile di prodotti analoghi presenti sul mercato, determinando un’immediata concentrazione di utenti sul proprio sito. In particolare il metodo di PageRank, brevettato nel 2001, si è rivelato molto più affidabile per il reperimento di informazioni davvero significative, rispetto ad altri disponibili sul mercato; Google è andata poi via via affinando tale metodo e tale processo è tuttora in corso ad esempio con i recenti sviluppi della nuova infrastruttura (BigDaddy) [47] volta a migliorare gli aspetti di sorting e ad introdurre più avanzati algoritmi, per consentire ad esempio l’indicizzazione di diversi tipi di contenuti anche non testuali. Al fine di aumentare i propri utenti, Google ha sfruttato la sua iniziale posizione dominante sulla ricerca per attivare una strategia volta alla creazione di un marchio omnicomprensivo, estendendo il proprio ambito d’azione anche su fronti molti diversi dal business della ricerca; in quest’ottica sono stati lanciati i servizi per la ricerca sui contenuti del proprio PC (Google Desktop), il servizio di email e chat (Gmail), il servizio di Instant messaging e VoIP (Google Talk), la ricerca m u l t i m e d i a l e ( G o o g l e Vi d e o , Vi d e o Vi e w e r, Google Movie Search), l’adattamento della funzionalità di ricerca e della visualizzazione dei risultati ai terminali mobili (Google Mobile), la fornitura di servizi associati alle mappe e alla localizzazione (Google Map, Google Earth), i servizi di ricerca prodotti (Froogle), gli annunci economici e il sistema di pagamento on-line (Google Base, Gbuy). Google si è mosso non solo sul fronte dei servizi/applicazioni Internet based, ma anche su quello dell’accesso; Google ha infatti vinto la gara per la copertura WiFi di San Francisco, per l’offerta di un accesso di base gratuito, ed eventualmente la vendita di accessi/servizi avanzati; inoltre sta finanziando (insieme a Skype) il progetto Fon che mira a trasformare le reti WiFi domestiche in hot spot cui chiunque si può connettere, creando una rete globale di hot spot WiFi peer to peer. Per quanto concer ne accesso e terminali mobili, Google si è mosso con una serie di alleanze con importanti player del settore: l’accordo con T-Mobile prevede Google come home page del servizio di accesso a Internet “web’n’walk”, quello con Vodafone l’integrazione del motore di ricerca su Vodafone Live!, Motorola 26 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 ha introdotto un’icona Google sui terminali per consentire all’utente di attivare il motore di ricerca pigiando un solo tasto. Inoltre, con Volkswagen sta sviluppando un sistema innovativo di navigazione che integra le immagini tridimensionali di Google Earth e l’accesso a Internet tramite il motore di ricerca Google per raccogliere in tempo reale informazioni utili all’automobilista (traffico, stazioni di servizio,…). In prospettiva Google sembra interessato ad estendere la propria presenza su qualsiasi dispositivo dotato di acceso a Internet. Per raccogliere sempre più utenti, Google punta quindi ad offrire (quasi sempre gratuitamente) un range sempre più ampio di servizi accessibile da un insieme sempre più vario ed esteso di terminali. La modalità di offerta rimane la stessa: i servizi non sono fatti pagare all’utente, ma le revenues derivano a Google dalle inserzioni pubblicitarie; chiaramente questo approccio può avere ripercussioni pesanti su altri tipi di modelli di business, quali quelli degli operatori TLC la cui principale fonte di revenues è rappresentata dai nuovi servizi che Google regala!. Il meccanismo innescato da Google è abbastanza semplice: aumenta il numero di utenti attratti dall’offerta più ricca e diversificata, gli utenti possono utilizzare diversi tipi di servizi (spesso tra loro integrati), aumenta il tempo passato online sull’offerta complessiva di Google, aumenta lo “spazio” per inserire i messaggi pubblicitari (ad esempio associandoli al contenuto delle email scambiate dagli user con Gmail, o ai servizi di ricerca video, o alle mappe, ...), aumentano le revenues per Google. Il nuovo asset di Google, che si affianca a quello originario di efficacia della ricerca, è quindi costituito dalla diversificazione dell’offerta che consente un buon posizionamento rispetto ai competitor di settore, quali Yahoo e Microsoft, e consente di mantenere sempre più a lungo gli utenti sui siti Google, oltre che acquisirne anche di nuovi allettati dalla varietà di servizi disponibili. Il numero di utenti per i nuovi servizi non è particolarmente elevato (e.g. Gmail, con i suoi 5Mil di utenti mensili in US, rappresenta il 5% del mercato complessivo email), e alcuni servizi quali Google News e Google Map, non sono tanto da considerarsi stand alone, ma rispondono alla strategia di Google contribuendo a migliorare la user experience sulla sua ampia offerta. Google si è inoltre posta l’obiettivo di migliorare la reddività del suo bacino d’utenza. Per migliorare il rapporto tra numero di utenti dei servizi e numero di click sui link sponsorizzati, questi ultimi devono essere più rispondenti alle esigenze dei diversi utenti; un inserimento più mirato dei messaggi pubblicitari si può avere se oltre a informazioni che derivano dalle ricerche fatte o dal contesto visualizzato, si utilizzano informazioni sull’utente che sta facendo la ricerca o navigando su uno specifico sito Web. Attraverso la registrazione (e.g. con Gmail) e le funzionalità di personalizzazione delle pagine e GOOGLE OK 17-05-2006 8:57 Pagina 27 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” dei servizi, Google può raccogliere un vasto al tipo di ricerca che ha effettuato; il sistema eseinsieme di indicazioni su preferenze e comportague la query di ricerca per ottenere un insieme di menti degli utenti, che vanno ad arricchire il loro link rilevanti, poi usa il profilo utente per personaprofilo, e costituiscono la base per la realizzalizzare il risultato della ricerca riordinando i docuzione di una pubblicità più mirata e di consementi in modo da riflettere la loro rilevanza rispetto guenza molto più efficace (behavioral advertial profilo utente. I risultati personalizzati della sing). Vanno in questa direzione funzionalità ricerca sono poi analizzati per caratterizzare ultequali MySearchHistory, che consente agli utenti riormente il profilo di ricerca (con keyword o argoregistrati di effettuare ricerche su un subset di menti descrittivi dei documenti trovati), che viene pagine visualizzate in passato e mantenute nella utilizzato per scegliere gli annunci pubblicitari, che propria storia personale, o la possibilità di custosaranno quindi rilevanti per lo specifico profilo mizzare le pagine di News sulla base degli inteutente e per la specifica ricerca. ressi personali, o la richiesta di email di alert su Grazie alla sua vasta offerta di servizi, Google news che contengano keyword specificate dall’uriesce a ritagliare profili sempre più accurati, comtente, o infine la costruzione del proprio sito Web pleti, aggiornati e contestualizzati su comportacon Page Creator. I profili utente registrano oltre menti e preferenze degli utenti, che coprono ambiti che le preferenze individuali, anche i link relazioanche molto diversi della loro vita, dalle varie forme nali (community) tramite i servizi di comunicadi infotainment sul Web, alle attività lavorative, alla zione quali Gmail e Google Talk. vita di relazione, …; in questo modo Google è in Inoltre i profili utente, le relative personalizzagrado di fornire target preziosi agli advertiser, i zioni dei servizi e l’history d’uso degli stessi sono quali sono sempre più propensi ad adottare forme mantenuti in rete, in modo da rendere l’accesso e di behavioral advertising: dal 2004 al 2005 la spesa la fruizione dei servizi personalizzati indipendenti per il behavioral advertising on line è cresciuta di dal dispositivo (e.g. PC, cellulare) e dal browser 300 Mil$, arrivando a rappresentare l’8.3% dell’onusati. line advertising nel suo complesso (che supera i 12 Google sta da tempo lavorando per accrescere Bil$). il nuovo a sse t basato su l l o user profiling . Inizialmente l’obiettivo era l’ottimizzazione dell’or5. Impatti su altri business dinamento dei risultati delle ricerche, al fine di fornire un servizio di ricerca più efficiente e mirato: nel Il modello di business di Google punta sul ruolo Marzo 2005 Google ha presentato una domanda di di broker e sulla raccolta pubblicitaria, molti servizi brevetto “Personalization of placed content ordesono offerti gratuitamente per raccogliere una ring in search results” [48], che definiva una comgrande base di utenti. A causa di questo modello, ponente del ranking, chiamata Profile Rank, sulla ogni “ingresso” di Google in nuovi campi può porbase del profilo utente, costruito tracciando le abitare a cambiare le regole del mercato; alcuni tudini dell’utente sui siti Google o in generale sulla esempi di servizi Google e relativi ambiti di impatto navigazione Web, o utilizzando interessi espressi sono evidenziati nella seguente tabella 4. dall’utente, info demografiche, geografiche, psicografiche, info su siti associati all’utente, attività 5.1 L’offerta Google per i servizi di comunicazione svolte sul Web e sul proprio desktop (non a caso Google ha introdotto servizi quali Desktop Search, La proposta di offrire una copertura gratuita WiFi Google Toolbar, Gmail…); i risultati delle ricerche per l’intera area metropolitana di San Francisco ha possono quindi essere ordinati combinando il metodo standard di calcolo della rilevanza dei risultati keyword based con il Profile Servizio Google Impatta su Prime reazioni/previsioni Rank, in modo da tener conto della specificità di Google Video Cable provider, Il successo dipenderà da quantità TV networks, Portals,…; e qualità dei contenuti resi disponibili interessi e preferenze di ciaComcast, Yahoo! scun utente. Google Base, Froogle, gBuy eBay, Monster, tribe.net, Valore di mercato di eBay sceso Google ha poi esteso l’uAmazon, Buy.com,.. sensibilmente ai primi rumors tilizzo dei profili utenti alla su Base realizzazione di una pubbliGoogle Talk (IM, VoIP); Telco operators Offerte VoIP integrate Free WiFi sull’accesso BB; wireless VoIP cità più mirata ed efficace; un suc c e ssivo brevetto Productivity programs: Microsoft, Apple, … Microsoft toolbar/ Il trend di Google toolbar, migrazione delle applicazioni dal “Result based personalizaSun OpenOffice, PC alla rete si sta consolidando tion of advertisements in a Gmail,Writely, Gpack search engine” ([49], [50], Google Library Amazon, book publisher Denunce degli autori e dei publisher [51]) prevede l’utilizzo del profilo utente sia per fornire un elenco di risultati personalizzati che per proporre un TABELLA 4› Impatto dei servizi Google. insieme di annunci pubblicitari mirati al profilo utente e NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 27 GOOGLE OK 17-05-2006 8:57 Pagina 28 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” sicuramente delle fortissime ripercussioni sul business delle comunicazioni. Se per Google questa è una mossa pubblicitaria a favore della comunità cittadina, dal punto di vista degli Operatori, sia mobili che fissi essa può essere vista come un’aggressione al mercato del Wireless Broadband. Se a tale possibilità si aggiunge che sia Google con Google Talk, sia altri attori (non ultimo Skype) potrebbero offrire comunicazione gratuita o basso costo, ciò porta ad un atteggiamento di difesa delle specificità degli Operatori stessi. A ciò va aggiunta l’azione congiunta di Google e Skype all’interno di FON [52] per definire i meccanismi tecnici per la condivisione di hot spot pubblici e privati. Google ha recentemente lavorato alla brevettazione di soluzioni per fornire accesso WiFi integrato con l’advertising [53]. In America il mercato degli Operatori Mobili Virtuali sta crescendo. Tali operatori coprono ancora delle nicchie di mercato. Cosa succederebbe se un’azienda come Google (o anche Yahoo) decidesse di entrare in questo mercato? Il marchio è sicuramente ben noto a moltissimi utenti, i servizi resi disponibili su Internet sono allettanti anche (e soprattutto) per il Mobile, le competenze per gestire grandi quantità di dati (ad esempio HLR) sono sicuramente presenti come anche la profonda conoscenza di tecniche di networking. A questo si potrebbe aggiungere la capacità di creare velocemente nuove applicazioni … ed il quadro si fa preoccupante ... . Ma oltre agli Operatori anche alcuni utenti mostrano segni di preoccupazione [54]. Alcuni ricordano ancora che Google si era impegnata in passato ad utilizzare tecnologie vocali per rendere ancora più agevole la ricerca su Internet [55]. Alcuni utenti temono che Google (e ciò sarebbe coerente con l’obiettivo della elevata profilatura degli utenti) potrebbe analizzare i discorsi degli utenti allo scopo di identificare parole chiave. Da una ricerca di qualche anno fa [56], emerge che la gran parte dell’informazione umana è veicolata tramite la voce. Se si suppone che GTalk diventi uno dei veicoli di tali informazioni (e si consideri che Google dispone di una grande quantità di memoria), si potrebbe allora prefigurare uno scenario in cui Google offre la possibilità di comunicare gratuitamente tramite voce e video, permettendo di memorizzare le conversazioni fra gli utenti su account personali degli utenti stessi. Da un certo punto di vista ciò potrebbe essere utile per gli utenti, ma ci sarebbe sempre un prezzo da pagare: Google potrebbe analizzare le conversazioni per poi proporre pubblicità personalizzate. 5.2 Google nel mondo dei computer Chissà cosa pensa Bill Gates delle offerte di Google? Intravede realmente il pericolo di un nuovo concorrente per il mondo dei software di sistema e di produzione personale? Sicuramente le voci emerse intorno a gennaio 2006 circa l’ingresso di Google nel campo dei prodotti per PC 28 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 erano spinte anche dal desiderio di alcuni tecnologi di vedere finalmente un grande competitor per Microsoft. Secondo una recente analisi Forrester [57] la strategia e il modello di business di Google rivoluzioneranno il business del software. Google sta operando in un ottica che vede il browser come punto di accesso a tutte le applicazioni dell’utente, che operano sia sul proprio desktop c h e i n re t e : v a n n o i n q u e s t a d i re z i o n e p ro grammi quali Google Desktop Search e Google Toolbar, il lancio di Google Pack, il bundle che include l’intera suite di applicazioni Google e software di terze parti (RealPlayer, PDF reader, antivirus, …), costantemente aggiornato in automatico dal Google Updater (attraverso il quale tra l’altro Google può facilmente proporre e i n t ro d u r re n u o v i S W e s e r v i z i ) , e l a re c e n t e acquisizione di Upstartle, compagnia che ha sviluppato Writely, un’applicazione di word processing Web based. Nell’ipotesi (non confermata) che Google facesse un tale passo, ancora una volta il business model che sorregge le attività dell’azienda californiana, porterebbe a dei drastici cambiamenti nel mercato del software. Immaginiamo un’offerta gratuita di Google per equipaggiare i computer di una vasta fetta di mercato residenziale, magari supportata da una buona dotazione di software per trattare informazioni e file multimediali. Il costo sarebbe solo quello di “registrasi” sul sito Google e permettere all’azienda un’analisi dei dati e dei profili dell’utente. Dal punto di vista dell’utente sarebbe un contratto vantaggioso (o ragionevole o accettabile), dal punto di vista dei concorrenti sarebbe esiziale: chi può competere con un’azienda che regala quello che le altre producono e vendono sul mercato? 5.3 Google nel mondo dei Media Nel mondo dei Media, il peso di Google sarebbe rivolto verso i produttori di contenuti. Con quali possibili effetti? Potrebbe essere possibile un ribaltamento dei costi per l’accesso ai media dagli utenti verso chi vuole pubblicizzare qualche prodotto. Il modello potrebbe diventare quello della televisione broadcast: la pubblicità condiziona l’accessibilità dei contenuti. Gli impatti in questo caso sarebbero meno dirompenti di quelli degli scenari precedenti, ma sicuramente il peso di Google si farebbe sentire anche in questo settore. Ipotesi assurde? Da Google bisogna aspettarsi di tutto [58] … dopo tutto l’obiettivo dell’azienda californiana è: “to organize the world's information and make it universally accessible and useful”. GOOGLE OK 17-05-2006 8:57 Pagina 29 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” — [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] BIBLIOGRAFIA “The Anatomy of a Large-Scale Hypertextual Web Search Engine” Sergey Brin and Lawrence Page www.db.stanford.edu/pub/papers/google.pdf Articoli su Google: http://labs.google.com/papers.html Descrizione generale di Google: http://en.wikipedia.org/wiki/Google “The Google Legacy - How Google's Internet Search is Transforming Application Software”, Stephen E. Arnold, 9/2005 Infornortics. www.infonortics.com/publications/google/google-legacy.html “The Search: How Google and Its Rivals Rewrote the Rules of Business and Transformed Our Culture” John Battelle, Nicholas Brealey Publishing Ltd La piattaforma Google: http://en.wikipedia.org/wiki/Google_platform “Web search for a planet: the google cluster architecture”, Luiz André Barroso, Jeffrey Dean, Urs Hölzle Published by the IEEE Computer Society. www.eecs.harvard.edu/~dbrooks/cs146/google.pdf “How Many Google Machines?”. www.tnl.net/blog/entry/How_many_Google_machines “The Magic of Google - The Big Factor”. www.linesave.co.uk/google_search_engine.html PageRank su http://en.wikipedia.org/wiki/Pagerank Architettura di Google. http://sciences.univpau.fr/etud/IMG/jpg/Architecture.jpg Una descrizione di URL su http://en.wikipedia.org/wiki/URL Una descrizione di Lista indicizzata invertita è presente in http://en.wikipedia.org/wiki/Inverted_index Il DNS su http://en.wikipedia.org/wiki/Dns “The Google File System”, Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung disponibile in http://labs.google.com/papers/gfs-sosp2003.pdf Una descrizione del Google File system è disponibile in http://en.wikipedia.org/wiki/Google_File_System “MapReduce: Simpli ed Data Processing on Large Clusters”, Jeffrey Dean and Sanjay Ghemawat. http://labs.google.com/papers/mapreduce-osdi04.pdf Una descrizione di Lisp è disponibile in http://en.wikipedia.org/wiki/Lisp_programming_language “Aspect-Oriented Programming”, G, Kiczales, et alii. http://citeseer.ist.psu.edu/cache/papers/cs/1860/http:z SzzSzwwwsal.cs.uiuc.eduzSz~kaminzSzdslzSzpapersz Szkiczales.pdf/kiczales97aspectoriented.pdf “Interpreting the Data: Parallel Analysis with Sawzall”, Rob Pike, Sean Dorward, Robert Griesemer, Sean Quinlan disponibile in http://labs.google.com/papers/sawzall-sciprog.pdf [21] “Is Google Labs the new Bell Labs?” in http://tvanncam.blog.usf.edu/2005/12/12/is-google-labs-the-newbell-labs [22] Informazioni su Google Search History in http://www.Google.com/searchhistory [23] “Reading the Google Tea Leaves” in http://www.tnl.net/blog/entry/Reading_the_Google_Tea _Leaves [24] I servizi Google. http://www.google.com/intl/en/options/ dal link “more” dalla pagina di Google [25] “And the prize goes to ... Google, again”. http://news.com.com/2061-10811_36056205.html?part=rss&tag=6056205&subj=news [26] “Ajax: A New Approach to Web Applications”, J. J. Garrett. http://www.adaptivepath.com/publications/essays/archi ves/000385.php [27] AJAX. http://en.wikipedia.org/wiki/AJAX [28] “Google, Inc. Kills G2G Share - R.I.P.”. http://www.p2pcore.com/stories/306.php [29] I servizi e i tool di Google. http://en.wikipedia.org/wiki/List_of_Google_services [30] “Yahoo and MSN Prove Competition for Google”. http://www.searchenginejournal.com/index.php?p=297 [31] Google Mini. http://www.google.com/enterprise/mini/ [32] Specifiche tecniche (non ufficiali) di Google Mini. disponibili su http://www.serversfirst.com/dedicated-servers/Googlemini.aspx [33] Google Search Appliance in http://www.google.com/enterprise/gsa/ [34] Specifiche tecniche (non ufficiali) di Google Search Applicance in http://www.joestump.net/209621270/Google-searchappliance-gb-1001-review.html [35] “Google AdWords-AdSense Block Diagram” informazioni non ufficiali in http://www.vaughns-1pagers.com/internet/adwords-adsense-diagram.htm [36] Informazioni sui Tool di linguaggio disponibili in http://www.Google.com/language_tools [37] Informazioni su Google Code disponibili in http://code.Google.com/projects.html [38] “Is Google About To Buy Sun Microsystems?” in http://blogcritics.org/archives/2006/02/26/123335.php [39] Informazioni su Google Calendar disponibili in http://www.google.com/googlecalendar/overwiev.html NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 29 GOOGLE OK 17-05-2006 8:57 Pagina 30 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” [40] “RFC 3920: Extensible Messaging and Presence Protocol (XMPP): Core” in http://www.techcrunch.com/2006/03/08/exclusivescreenshots-Google-calendar/ ; ulteriori informazioni su XMPP sono disponibili in http://en.wikipedia.org/wiki/Xmpp [41] Informazioni su Frappr disponibili in www.frapper.com [42] “Google Talk for BlackBerry Devices” in http://www.blackberry.com/GoogleTalk/index.do;jsessionid=805BDD9CE67068D6B3A0005CC336B49A [43] Informazioni su UpStratle e Writely disponibili su www.writely.com [44] Informazioni su Web 2.0 disponibili su http://www.oreillynet.com/pub/a/oreilly/tim/news/2005/09/30/what-isweb-20.html [45] “AdSense & AdWords - Non-linear Business Model of Perpetual Revenue?” in http://www.g-site.com/random_times/22.html [46] “Europe’s search engine marketing forecast, 2004 to 2010” - H.K.Omwando, Forrester, 11 March 2005 [47] “Google's Rumored 'Big Daddy' Overhaul Makes Waves” in http://www.eweek.com/article2/0,1895,1916406,00.asp [48] “Is Google Messing With Organic Algos?” in http://www.searchengineguide.com/bruemmer/006122.html [49] “Google Advertising Patents for Behavioral Targeting, Personalization and Profiling” in http://www.searchenginejournal.com/index.php?p=2311 [50] “Google Patent: Personalization of Placed Content Ordering in Search Results”. www.socialpatterns.com/search-engine-marketing/google-patent-personalization-of-placed-content-orderingin-search-results/ [51] “Personalization of placed content ordering in search results” in http://appft1.uspto.gov/netacgi/nphParser?Sect1=PTO1&Sect2=HITOFF&d=PG01&p=1&u =/netahtml/PTO/srchnum.html&r=1&f=G&l=50&s1=%2 220050240580%22.PGNR.&OS=DN/20050240580& RS=DN/20050240580 [52] Informazioni su FON in www.fon.com [53] “Google seeks patent for ad-subsidized WiFi access” in http://arstechnica.com/news.ars/post/200603246455.html [54] http://Google.blogspace.com/wifi [55] “Searching the Web by Voice”, Alexander Franz, Brian Milch; disponibile in 30 NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 http://www.cs.berkeley.edu/%7Emilch/papers/gvs.pdf [56] “How Much Information? 2003” in http://www.sims.berkeley.edu:8000/research/projects/h ow-much-info-2003/execsum.htm [57] “My view: The Google Future” – G.Colony, Forrester, 31 October 2005 [58] “Imagining the Google Future”, Chris Taylor in: http://money.cnn.com/magazines/business2/business2_archive/2006/01/01/8368125/index.htm — ABBREVIAZIONI AJAX API CL2 CPC CTR DDL docID DNS EPC EIDE GFS GRID HLR IBM ICT IDE IETF IM HTML LISP MIT MSN NASA NASDAQ PARC pCTR POSIX Asynchronous Javascript and XML Application Programming Interface Google Calendar Cost Per Click Click Through Rate Data Definition Language document IDentifier Domain Name Server Earning Per Click Enhanced Integrated Drive Electronics Google File System Global Resource Information Database Home Location Register International Business Machine Information Communication Technology Integrated Drive Electronics Internet Engineering Task Force Instant Messaging Hyper Text Markup Language List Processing (programming language) Massachusetts Institute of Technology Microsoft Network National Aeronautics & Space Administration National Association of Securities Dealers Automated Quotation Palo Alto Research Center predicted Click Through Rate Portable Operating System Interface for UNIX (IEEE Standard 1003.1) GOOGLE OK 17-05-2006 8:57 Pagina 31 DEMARIA › MINERVA • Il modello Google, ovvero “advertising is king” PPC RAM RIM SDK SIP SDRAM SMS SOA URL VoIP WiFi XML XMPP Pay Per Click Random Access Memory Research In Motion Ltd Sofware Development Kit Session Initiation Protocol Synchronous Dynamic Random Access Memory Short Message Service Service Oriented Architecture Uniform Resource Locator Voice over IP Wireless Fidelity eXtensible Markup Language eXtensible Messaging and Presence Protocol T i z i a n a D e m a r i a si è laureata in Scienze dell’informazione nel 1987 ed è stata assunta in CSELT (poi TILAB), dove ha inizialmente partecipato alle attività di definizione e sperimentazione di architetture, protocolli e servizi per le reti ATM a larga banda, operando anche negli enti di normativa internazionali (ETSI, ITU) e in progetti europei (RACE, EURESCOM). Dal 1995 ha svolto attività di scouting su servizi innovativi, analisi di iniziative competitive sul mercato italiano, analisi di scenari evolutivi tecnologici e di business, coordinando progetti di supporto alle Aree Marketing e Pianificazione Strategica Telecom Italia e il progetto TILAB di Osservatorio Tecnologico, e più recentemente operando nell’ambito di progetti per TIM; attualmente opera nell’Area Trend&Scientific Communication nell’ambito della Funzione Research&Trend di IE. R o b e r t o M i n e r v a si è laureato in Scienze dell’Informazione nel 1987, è stato assunto in CSELT (poi TILAB). Ha partecipato alle attività relative a servizi in fonia per poi passare alla definizione e realizzazione di architetture per ser vizi. Ha direttamente p a rtecip ato all’ iniziativa TINA-C (Telecommunication Information Networking Architecture Consortium) dove è stato responsabile delle specifiche dell’Architettura dei Servizi. In seguito si è occupato di tecnologie VoIP (con particolare riferimento al protocollo SIP), definizione di Service Delivery Platform (in ambito OSA/Parlay) e definizione di servizi e soluzioni per il mobile (in particolare per architetture IMS). Ha assunto varie responsabilità nell’ambito delle tematiche di Network Intelligence. Attualmente opera nell’Area Trend&Scientific Communication nell’ambito della Funzione Research&Trend di IE. NOTIZIARIO TECNICO TELECOM ITALIA › Anno 15 n. 1 - Giugno 2006 31