10 novembre 2015 - Global Administrator - 0 commenti

Database documentale, tutta un’altra archiviazione

Database documentale, tutta un’altra archiviazione

Tra gli strumenti a disposizione delle aziende per archiviare i propri dati, oltre al database relazionale, ultimamente sento parlare di database documentale. Ma è vero che quest’ultimo è la migliore soluzione per lavorare con dati di grandi dimensioni? Come sempre mi sono fatto travolgere dalla curiosità per la tecnologia e ho chiesto a Yuri Macchiavelli, Architect & Developer in eLogic, di spiegarmi come stanno le cose. E dal momento che Yuri ha da poco festeggiato la certificazione per l’utilizzo del database documentale Mongo DB, gli ho chiesto quali vantaggi offre.

Yuri spiegami la differenza tra l’archiviazione dei dati su database documentale e database relazionale
«I database documentali sono nati circa quindici anni fa come strumenti alternativi ai database relazionali. Mentre questi ultimi, ad esempio Microsoft Sql Server che è usato da Kentico CMS, rappresentano i dati come tabelle e relazioni e costringono il progettista ad adattare la rappresentazione logica dell'informazione, il modello documentale organizza i dati come documenti appunto, degli oggetti complessi secondo una struttura ad albero (chiamata grafo). Non è detto che debbano utilizzarlo solo le aziende che hanno molte informazioni da gestire, è valido per tutte le aziende e offre strumenti e vantaggi diversi rispetto al database relazionale».

Ad esempio?
«Come accennato in precedenza i dati possono essere inseriti così come sono rappresentati nell’applicazione in fase di sviluppo, senza doverli adattare alle tabelle che il database relazionale impone. Il processo di sviluppo è più veloce. Con questo approccio document-oriented è possibile rappresentare delle relazioni gerarchiche anche molto complesse in un singolo record. Un esempio di database documentale è Mongo DB, di cui ho ottenuto la certificazione “MongoDB Certified Developer, Associate Level”. Con questo strumento lo sviluppo mi è sembrato molto più rapido e anche l'approccio mi è sembrato molto più facile».
E cose funziona esattamente Mongo DB? Che vantaggi offre alle aziende?
«Mongo DB è il database documentale più diffuso al momento. E’ ideale per gestire progetti complessi, uno strumento molto potente, flessibile, scalabile e utilizzabile in diversi casi. La scalabilità verticale è la tolleranza ai guasti: possiamo installare Mongo DB su più macchine (chiamate nodi), e se una delle macchine non funziona per un guasto imprevisto, automaticamente si può lavorare con le altre, come se fossero delle macchine di backup sulle quali vengono salvati i dati costantemente.
La scalabilità orizzontale aumenta le performance: si possono dividere i dati su più macchine in modo da velocizzare la ricerca».

Quindi risparmiano sia le aziende in termini di spesa sia voi programmatori in termini di tempo di lavoro?
«Esatto, perché per noi programmatori il lavoro è più snello potendo velocizzare lo sviluppo e l’inserimento dei dati. Per i clienti non ci sono costi di licenza dal momento che Mongo DB è uno strumento open source».

Grazie Yuri, sei stato chiarissimo. E in eLogic state lavorando a qualche progetto con queste nuove tecnologie?
«Quante cose vuoi sapere Karmillo :). Ne riparliamo la prossima volta ok?
Intanto leggi i nostri ultimi progetti realizzati per Social Pneus e Lionspeech».
Comments
Blog post currently doesn't have any comments.