Panoramica dei database NoSQL

Sommario:

Panoramica dei database NoSQL
Panoramica dei database NoSQL
Anonim

L'acronimo NoSQL è stato coniato nel 1998. Molte persone pensano che NoSQL sia un termine dispregiativo creato per colpire SQL. In re altà, il termine significa non solo SQL. L'idea è che entrambe le tecnologie possono coesistere e ognuna ha il suo posto. Il movimento NoSQL è stato nelle notizie negli ultimi anni poiché molti dei leader del Web 2.0 hanno adottato una tecnologia NoSQL. Aziende come Facebook, Twitter, Digg, Amazon, LinkedIn e Google utilizzano tutte NoSQL in un modo o nell' altro. Analizziamo NoSQL in modo che tu possa spiegarlo al tuo CIO o anche ai tuoi colleghi.

Image
Image

NoSQL è emerso da un'esigenza

Archiviazione dati: I dati digitali archiviati nel mondo sono misurati in exabyte. Un exabyte equivale a un miliardo di gigabyte (GB) di dati. Secondo Internet.com, la quantità di dati memorizzati aggiunti nel 2006 era di 161 exabyte. Solo 4 anni dopo, nel 2010, la quantità di dati archiviati sarà di quasi 1.000 ExaBytes, con un aumento di oltre il 500%. In altre parole, nel mondo vengono archiviati molti dati e continueranno a crescere.

Dati interconnessi: I dati continuano a essere sempre più connessi. La creazione del web è promossa da collegamenti ipertestuali, i blog hanno pingback e tutti i principali sistemi di social network hanno tag che legano le cose insieme. I principali sistemi sono costruiti per essere interconnessi.

Struttura dati complessa: NoSQL può gestire facilmente strutture dati nidificate gerarchiche. Per ottenere la stessa cosa in SQL, avresti bisogno di più tabelle relazionali con tutti i tipi di chiavi. Inoltre, esiste una relazione tra prestazioni e complessità dei dati. Le prestazioni possono peggiorare in un RDBMS tradizionale poiché memorizziamo le enormi quantità di dati richiesti nelle applicazioni di social network e nel web semantico.

Cos'è NoSQL?

Immagino che un modo per definire NoSQL sia considerare ciò che non è. Non è SQL e non è relazionale. Come suggerisce il nome, non è un sostituto di un RDBMS ma lo completa. NoSQL è progettato per archivi dati distribuiti per esigenze di dati su scala molto ampia. Pensa a Facebook con i suoi 500.000.000 di utenti oa Twitter che accumula Terabit di dati ogni singolo giorno.

In un database NoSQL, non esiste uno schema fisso e nessun join. Un RDBMS "scala" ottenendo hardware sempre più veloce e aggiungendo memoria. NoSQL, d' altra parte, può trarre vantaggio dalla "scalabilità orizzontale". Il ridimensionamento si riferisce alla distribuzione del carico su molti sistemi di merci. Questo è il componente di NoSQL che lo rende una soluzione economica per set di dati di grandi dimensioni.

Categorie NoSQL

L'attuale mondo NoSQL rientra in 4 categorie di base.

  1. Key-values Stores si basa principalmente su Dynamo Paper di Amazon, scritto nel 2007. L'idea principale è l'esistenza di una tabella hash in cui è presente una chiave univoca e un puntatore a un particolare elemento di dati. Queste mappature sono generalmente accompagnate da meccanismi di cache per massimizzare le prestazioni.
  2. Column Family Stores sono stati creati per archiviare ed elaborare grandi quantità di dati distribuiti su molte macchine. Ci sono ancora chiavi ma puntano a più colonne. Nel caso di BigTable (modello NoSQL della famiglia di colonne di Google), le righe sono identificate da una chiave di riga con i dati ordinati e archiviati da questa chiave. Le colonne sono disposte per famiglia di colonne.

  3. I database dei documenti sono stati ispirati da Lotus Notes e sono simili ai negozi con valori chiave. Il modello è fondamentalmente documenti con versione che sono raccolte di altre raccolte di valori-chiave. I documenti semistrutturati sono archiviati in formati come JSON.
  4. Graph Databases sono costruiti con i nodi, le relazioni tra le note e le proprietà dei nodi. Invece di tabelle di righe e colonne e della struttura rigida di SQL, viene utilizzato un modello grafico flessibile che può essere ridimensionato su molte macchine.

Grandi giocatori NoSQL

I principali attori in NoSQL sono emersi principalmente grazie alle organizzazioni che li hanno adottati. Alcune delle più grandi tecnologie NoSQL includono:

  • Dynamo: Dynamo è stato creato da Amazon.com ed è il database NoSQL chiave-valore più importante. Amazon aveva bisogno di una piattaforma distribuita altamente scalabile per le proprie attività di e-commerce, quindi ha sviluppato Dynamo. Amazon S3 utilizza Dynamo come meccanismo di archiviazione.
  • Cassandra: Cassandra era open source da Facebook ed è un database NoSQL orientato alle colonne.
  • BigTable: BigTable è il database proprietario di Google orientato alle colonne. Google consente l'utilizzo di BigTable ma solo per Google App Engine.
  • SimpleDB: SimpleDB è un altro database Amazon. Utilizzato per Amazon EC2 e S3, fa parte di Amazon Web Services che addebita commissioni in base all'utilizzo.
  • CouchDB: CouchDB insieme a MongoDB sono database NoSQL orientati ai documenti open source.
  • Neo4J: Neo4j è un database grafico open source.

Interrogazione su NoSQL

La domanda su come interrogare un database NoSQL è ciò che interessa alla maggior parte degli sviluppatori. Dopotutto, i dati archiviati in un database enorme non servono a nessuno se non puoi recuperarli e mostrarli agli utenti finali o servizi web. I database NoSQL non forniscono un linguaggio di query dichiarativo di alto livello come SQL. Invece, interrogare questi database is> PREFIX foaf:

SELECT ?url

FROM

WHERE {

?contributor foaf:name "Jon Foobar".

?contributore foaf:weblog ?url.

}

Futuro di NoSQL

Le organizzazioni che hanno enormi esigenze di archiviazione dei dati stanno guardando seriamente a NoSQL. Apparentemente, il concetto non sta ottenendo tanta trazione nelle organizzazioni più piccole. In un sondaggio condotto da Information Week, il 44% dei professionisti IT aziendali non ha sentito parlare di NoSQL. Inoltre, solo l'1% degli intervistati ha riferito che NoSQL fa parte della loro direzione strategica. Chiaramente, NoSQL ha il suo posto nel nostro mondo connesso, ma dovrà continuare ad evolversi per ottenere il fascino di massa che molti pensano possa avere.

Consigliato: