La principal diferencia entre una base de dades NoSQL i una base de dades tradicional, és que les primeres no són interrogades a través del llenguatge SQL. Normalment les bases de dades NoSQL es classifiquen en funció de la forma en que emmagatzemen les dades, ja que aquestes no s’emmagatzemen en taules. Així podem trobar Bases de dades NoSQL que treballen amb: Parelles Clau-Valor, Documents, Graphs.
Des de l’any 2011, s’ha començat a escriure una especificació per al llenguatge utilitzat per interaccionar amb bases de dades NoSQL: UnQL ( Unestructured Query Language). Així en aquesta especificació s’especifica com consultar col·leccions (equivalent a taules), com inserir documents (equivalent a les files) i com manipular els camps (equivalent a les columnes).
Aquestes bases de dades són utilitzades per les grans empreses del món tecnològic, com són Facebook, Twitter, Mozilla, GitHub, EventBritte, FourSquare. Aquestes empreses han elegit utiltizar bases de dades NoSQL perquè aquestes tenen una gran escalabilitat horitzonal, cosa molt positiva quan és vol poder creixer d’una forma fàcil.
Per finalitzar us deixo una llista de diferents bases de dades NoSQL en funció del tipus de document que enmagatzemen:
Document
Clau-Valor
- Redis
- Apache Cassandra
- memcahed (en memòria)
Graphs
Podeu trobar la llista complerta i més detalls a la wikipedia.