Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Alcuni esempi di database non relazionali: DB non cloud
Scritto da Francesco Argese il 28-04-2009 ore 11:00
Intel Parallel Studio XE 2015 Cluster Edition
Nel precedente articolo abbiamo illustrato alcuni Web Services disponibili in Rete per memorizzare i propri dati tramite database chiave/valore. In questo contributo prenderemo invece in considerazione un certo numero di database chiave/valore, che possono essere installati sul proprio PC o anche nel proprio spazio web, qualora si disponga di un server dedicato.

I prodotti in questione sono nati da poco tempo e la maggior parte di essi è ancora in fase alpha o beta. E' interessante notare che alcuni di questi prodotti sono open source, e pertanto, avendo accesso diretto al codice sorgente, è più semplice poter constatare il potenziale e le eventuali limitazioni presenti.

Ognuno di questi progetti ha una sua peculiarità: ad esempio CouchDB offre una soluzione originale, che strizza l'occhio a chi ama JavaScript e JSON. Questo database, open source, document-oriented e derivato da database chiave/valore, usa JSON per la definizione degli schemi e consente di creare "viste" tramite JavaScript in maniera dinamica. Attualmente, però, questo database non si può definire distribuito, in quanto, anche se gli sviluppatori ci stanno lavorando su, non è ancora dotato di tutti quei meccanismi indispensabili per un database di questo tipo.

Molto simile a CouchDB è MongoDB, un database sviluppato da 10gen. Come il primo, anche questo è document-oriented e supporta JSON, ma è progettato per essere un database ad oggetti piuttosto che un database chiave/valore.

Un progetto molto interessante dal punto di vista della scalabilità è Project Voldermort, un database chiave/valore distribuito nato dal lavoro per LinkedIn, come riportato su alcune pagine pubblicate sul blog del noto social network. Project Voldermort, pur essendo molto nuovo, è ritenuto in grado di offrire una elevata scalabilità.

Drizzle, invece, ha avuto una evoluzione molto differente dai precedenti: nato infatti come una spin-off di MySQL 6, mira a diventare una piattaforma di database semirelazionale, conservando la capacità di memorizzare dati in maniera relazionale, ma anche di garantire un buon supporto per la memorizzazione di dati su sistemi web o cloud con più core a disposizione.

Questo articolo conclude la serie di articoli sui database non relazionali. A prescindere dall'evoluzione che avranno i DB, va sottolineato che questo approccio non può essere considerato il migliore in assoluto, ma come la maggior parte delle cose nel campo informatico, rappresenta un compromesso che potrebbe tornare utile nel prossimo futuro per determinati tipi di applicazioni, nella fattispecie le applicazioni distribuite, che richiedono un'elevata scalabilità nel proprio sistema di memorizzazione.
Precedente: Watson, il supercomputer IBM che partecipa ai telequiz
Successiva: Head First Software Development
Copyright Programmazione.it™ 1999-2014. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.204 secondi.