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