Un gruppo di ricercatori ha presentato un
lavoro, che mostra come i database SQL paralleli siano fino a 6,5 volte più veloci della tecnologia proprietaria usata da Google per gestire la sua immensa mole di dati, e cioè
MapReduce.
Quest'ultima permette di indicizzare il World Wide Web usando una griglia di computer a basso costo. Secondo un
intervento di
Grzegorz Czajkowski, nel gennaio 2008
MapReduce gestiva 20 PB di dati al giorno e nel novembre 2008 poteva ordinare un TB di dati in 68 secondi, utilizzando 1000 computer. Questi risultati hanno conquistato molti seguaci, che
ritengono i vecchi database relazionali oramai superati, soprattutto per
grid di grandi dimensioni e per il
cloud computing.
Di parere diverso sono
David DeWitt — professore di Computer Sciences alla University of Wisconsin, Madison — e
Michael Stonebraker — CTO di
Vertica — i più noti fra gli autori del lavoro sopracitato, che sarà pubblicato sul numero di giugno-luglio di
ACM SIGMOD. Essi sostengono che
MapReduce manca di alcune funzionalità chiave, e addirittura rappresenta "un grande passo indietro".
Nel test sono stati impiegati due cluster, ciascuno dei quali con 100 nodi in parallelo; sul primo girava il database
column-based di
Vertica e sull'altro un database
row-based "senza nome" di un grande produttore non specificato; entrambi sono stati confrontati con un sistema, configurato in maniera simile, sul quale girava
MapReduce. I server, collegati da porte Gigabit Ethernet, erano degli Intel Core 2 Duo a 2,4 GHz, 4 GB di RAM, con a bordo il 64-bit Red Hat Enterprise Linux e due dischi 250GB SATA-I.
I database SQL si sono dimostrati da 3,1 a 6,5 più veloci e hanno richiesto meno codice per implementare i vari task; tuttavia hanno richiesto un lavoro più lungo per il caricamento dei dati e per la messa a punto dei paramentri. L'analista
Curt Monash ritiene che questi dati confermino le sue opinioni, e cioè che
MapReduce sia superiore solo in certi casi limitati, come il
text indexing and searching.
I ricercatori ammettono comunque che l'installazione e la configurazione dei database SQL sono nettamente più laboriose;
MapReduce, in questo campo, si è dimostrato 3 volte più veloce di
Vertica e 20 volte più veloce del database "senza nome". Il fatto che il test si sia basato su 100 cluster, invece dei 1000 impiegati da Google, non è rilevante, secondo gli autori.