A NoSQL (egyes értelmezések szerint Not only SQL, azaz nem csak SQL, más értelmezés szerint egyszerűen csak nem SQL) adatbázis-kezelő rendszerek gyűjtőneve. A NoSQL adatbázisok elsősorban nem táblákban tárolják az adatokat, és általában nem használnak SQL nyelvet lekérdezésre.

A legtöbb NoSQL adatbázis szerver erősen optimalizált írás és olvasás műveletekre, míg ezen túl nem sok műveletet támogatnak. Ezt a viszonylag szűk funkcionalitást a jobb sebességgel és skálázhatósággal kompenzálják.

A NoSQL adatbázisok nem feltétlenül tudnak adni ACID működést.

A tárolt eljárások helyett általában MapReduce programokat lehet futtatni a legtöbb ilyen adatbázison.

A NoSQL adatbázisokat kategóriákra bonthatjuk az adattárolás módja alapján, ez a felosztás viszont inkább elvi, egyes adatbázisokat több kategóriába is besorolnak.[1]

Dokumentumtárolók

szerkesztés

A dokumentumtárolók központi koncepciója a dokumentum. A dokumentum valamilyen formátumban tárolt információ. A gyakran használt formátumok az XML, JSON, BSON, YAML, vagy akár az emberi felhasználásra szánt formátumok, pl. PDF, Microsoft Word dokumentumok. A dokumentumok a relációs adatbázisok tábláinak rekordjaitól abban térnek el, hogy minden rekordnak ugyanazok a mezői vannak egy táblában, míg a dokumentumok teljesen eltérő struktúrával rendelkezhetnek. Különböző szoftverek különböző módszereket használnak a dokumentumok rendszerezésére:

  • gyűjtemények
  • címkék
  • metainformációk
  • hierarchikus elrendezés

Gráf adatbázisok

szerkesztés

A gráf-adatbázisok olyan adatok tárolására specializálódtak, amelyek jól modellezhetőek gráfként, azaz az adatok határozatlan számú kapcsolattal vannak összekötve. Ilyen adatszerkezetekre lehet példa közösségi háló, közlekedési térkép, hálózati topológiák vagy akár wikioldalak.

Kulcs-érték adatbázisok

szerkesztés

A kulcs-érték adatbázisok séma nélküli adattárolást tesznek lehetővé, az értékeket a kulcsok segítségével lehet elérni illetve felülírni és ezen felül általában kevés műveletet támogatnak.

Ismert kulcs-érték adatbázisok a Riak, a Cassandra és a Voldemort projekt.

Objektum-adatbázisok

szerkesztés

Az objektum-adatbázisok olyan adatbázisok, amelyek az adatokat az objektumorientált programozásban használt objektumként tárolják. Az első objektum-adatbázisok az 1980-as évekből származnak.[2]

Ismert NoSQL adatbázisok

szerkesztés

A legelterjedtebb NoSQL adatbázisok az alábbiak:

Kapcsolódó szócikkek

szerkesztés
  1. NoSQL Distilled ISBN 0321826620
  2. Archivált másolat. [2014. március 6-i dátummal az eredetiből archiválva]. (Hozzáférés: 2013. május 21.)