Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

OrientDB e NoSQL

Un'introduzione al mondo dei database NoSQL ed in particolare ad OrientDB, che implementa una strutturazione dei dati molto flessibile ed adatta a varie soluzioni.
Un'introduzione al mondo dei database NoSQL ed in particolare ad OrientDB, che implementa una strutturazione dei dati molto flessibile ed adatta a varie soluzioni.
Link copiato negli appunti

Nonostante il paradigma dei database relazionali abbia quasi cinquanta anni di vita, esso non è affatto obsoleto e continua tutt'oggi ad ispirare il lavoro di molti progettisti. D'altro canto, l'informatica attuale dominata da Social Network, Cloud Computing ed alta connettività - ormai diffusa anche in mobilità - ha evidenziato alcuni limiti di tale modello, soprattutto in termini di elasticità e scalabilità.

Le principali alternative al modello relazionale ricadono nell'ambito del cosiddetto movimento NoSQL. Contrariamente a quanto alcuni sostengono, il termine NoSQL significa "Not only SQL", pertanto i DBMS che aderiscono a questa filosofia non solo non rinnegano SQL ma talvolta ne integrano alcune funzionalità. Tra i vantaggi degli approcci NoSQl, citiamo i seguenti:

  • strutturazione dei dati centralità alle informazioni e alla loro varietà
  • scalabilità sharding
  • prestazioni
    Infatti la replica
  • flessibilità nella progettazione

Tutti i tipi di NoSQL

Le attuali soluzioni NoSQL possono essere usate per molteplici scopi, e possono essere classificate in alcune categorie comuni:

  • database a "documenti" MongoDB
  • database a grafo
  • key/value chiave/valore Redis
  • Column-oriented

OrientDB: cos'è e dove si colloca

Come si evince dal titolo di questa lezione introduttiva, nella guida che segue ci occuperemo di OrientDB, una soluzione prodotta e sviluppata da Orient Technologies. OrientDB viene definito come un database multi-model, cioè un modello "ibrido" che include diverse funzionalità delle tipologie di database NoSQL precedentemente elencate.

Alla base dei suoi vari modelli, si colloca l'Object Model, ispirato dalla programmazione ad oggetti, che permette di definire classi di dati supportando anche ereditarietà e polimorfismo.

Il Document Model costituisce invece l'anima a documenti di OrientDB. Ci permetterà di raccogliere i documenti in strutture molto flessibili (le collezioni), e tali oggetti saranno legati tra loro da link. Il Document Model è un parte fondamente delle API di OrientDB, e l'affronteremo all'inizio della guida.

Il Graph Model rappresenta una delle finalità principali di OrientDB: raccogliere documenti in nodi collegati tra loro da relazioni. La rete di interconnessioni che si verrà così a creare permetterà di estrapolare ulteriori informazioni utili.

Infine il Key/Value Model è forse quello che consente di utilizzare OrientDB in modo concettualmente più semplice concettualmente: gli oggetti saranno immagazzinati in strutture indicizzate tramite chiavi.

A differenza di quanto avviene in altri gestori di database, OrientDB è realmente Multi-Model, nel senso che i vari approcci appena descritti non sono solo delle interfacce offerte dal sistema, ma quattro veri modelli di gestione dei dati di cui il motore del DBMS è stato dotato.

La varietà di usi cui si presta OrientDB è proprio uno dei fattori che ne ha determinato la rapida diffusione. Tra i vari paradigmi NoSQL non ne esiste uno migliore degli altri, ma alcuni di essi possono essere particolarmente adatti ad alcuni tipi di progetti. A seconda delle circostanze quindi si possono sfruttare i vantaggi di un approccio piuttosto che degli altri.

Nella guida, vedremo inizialmente come realizzare database a documenti con OrientDB, continuando poi con la sua natura di DBMS a grafo, evidenziando in questo caso particolari tipologie di soluzioni in cui esso può essere impiegato.

Ti consigliamo anche