Home News Come DynamoDB di Amazon ha reinventato i database
Come DynamoDB di Amazon ha reinventato i database PDF Stampa E-mail
Giovedì 11 Giugno 2015 11:00

Come DynamoDB di Amazon ha reinventato i database

Dietro ogni grande sito di e-commerce vi è sicuramente un grande database e questo Amazon lo sa bene. L’azienda leader nel settore delle vendite online, nel corso della sua storia ha dovuto affrontare diversi problemi che riguardano la gestione dei dati, prima di arrivare allo sviluppo di DynamoDB.

Intorno agli anni 2000 il database di Amazon, infatti, non era stato in grado di affiancare e supportare la crescita aziendale. Questo problema era dovuto al fatto che l’azienda non si basava su un unico database, ma su diversi, ognuno con una propria responsabilità. Mentre l’azienda puntava a diventare un business da 10 miliardi di dollari, la quantità di dati gestiti nei DB SQL cresceva sempre più, fino ad arrivare ad esplodere. Nel 2004 la gestione dei dati era sempre più difficile e le interruzioni del servizio sempre più frequenti a causa di SQL overload.

Così Amazon piuttosto che cercare una soluzione esterna, ha scelto di sviluppare un sisteama proprio di gestione: DynamoDB. Si trattava di un nuovo tipo di banca dati che rifiutava tutte le regole tradizionali SQL e riusciva a scalare con estrema facilità. Nel 2007 addirittura il CTO Werner Vogels e il suo team hanno pubblicato un documento dal titolo “Dynamo Amazon’s highly available key value store”, condividendo il loro successo con il resto del mondo. Alcuni hanno affermato che questo è stato il momento in cui ha avuto inizio lo sviluppo dei database NoSQL.

Il problema dei database SQL

I database relazionali, utilizzati da diversi decenni e che comunemente si basano sul linguaggio SQL, sono ideali per organizzare i dati in tabelle ed effettuare query. Il loro successo e la loro forza sono indiscutibili. Gartner stima addirittura che il mercato dei database SQL ammonta a 30 miliardi di dollari.

Ma subito dopo l’anno 2000, aziende come Amazon, Google e Yahoo hanno avuto delle richieste che i database SQL non riuscivano più a gestire. Un sistema SQL relazionale spende enormi risorse di calcolo per rendere i dati coerenti in tutto il sistema distribuito. I database NoSQL e quindi anche DynamoDB hanno lo svantaggio di sacrificare la coerenza dei dati per aumentare però la disponibilità. Ma la priorità di Amazon era quella di mantenere i dati all’interno del carrello della spesa e renderli disponibili ai clienti nel più breve tempo possibile. DynamoDB ha risolto tutti questi problemi: il database è in grado gestire un enorme carico di lavoro e mantenere le prestazioni elevate, eseguendo la copia di backup dei dati su diversi nodi.

DynamoDB un database nel cloud

Khawaja Shams, responsabile dell’ingegneria di Amazon DynamoDB, ha affermato che “DynamoDB è stato uno dei primi database NoSQL”. Inizialmente non era proprio perfetto, vantava molte funzionalità ma è pur vero che richiedeva notevoli risorse per l’installazione e la gestione.

Nel 2012 però c’è stata la svolta. La versione hosted del database di Amazon è stata introdotta in Amazon Web Service come soluzione IaaS completamente gestita.

Attualmente i clienti pagano 0,0065 dollari all’ora per circa 36.000 operazioni di scrittura nel database con più 0.25 dollari per GB di dati memorizzati nel sistema al mese. Se una determinata applicazione dovesse necessitare di maggiore capacità il database è in grado di distribuire il carico di lavoro su più nodi in pochi clic .

Uno dei principali analisti di Forrester, Noel Yuhanna, ritiene che DynamoDB sia uno tra i principali database NoSQL al momento disponibili sul mercato. Il sistema continua a crescere: sembra che ogni anno DynamoDB elabori il triplo delle richieste e memorizzi 4 volte la quantità di dati rispetto all’anno precedente.

 

Tutorial

Vuoi approfondire degli argomenti specifici? Segui i miei tutorial, per dubbi o domande contattami.

Vai ai tutorial

Flickr

Guarda le mie foto su Flickr. Hai bisogno di foto particolari? Vuoi imparare a fotografare? Contattami
flickr_logo

Servizi Online

Vuoi predisporre il tuo sito web personalizzato? Hai bisogno di aiuto o consulenza?

Acquista i servizi online

Contattami

Per approfondimenti o informazioni su corsi di formazione o lavori contattami.

Richiedi uno scambio link con il mio sito.