NoSQL – inne podejście do persystencji danych.

Bazy Danych – tamat, który każda osoba związana z IT poznała przynajmniej w podstawowym zakresie. Relacyjne bazy danych to chyba pierwsze skojarzenie z tym tematem. Tymczasem, do pewnych specyficznych zastosowań, warto rozważyć znacznie inne implementacje. NoSQL – o tym dzisiaj słów kilka.

NoSQL – to klasa systemów bazodanowych zoptymalizowanych pod kątem: dopisywania i odczytu danych. Nie udostępniają mechanizmów relacyjnych, są przeznaczone dla trzymania dużej ilości danych o przeważnie prostej strukturze (np. klucz->wartość).  Nie udostępniają mechanizmu JOIN. Nie gwarantują także właściwości ACID – niejako podstawy w RDBMS. Dzięki temu wszystkiemu, czas dostępu do danych jest tu znacznie mniejszy niż w przypadku tradycyjnych relacyjnych baz danych.

Wikipedia podaje podział na kilka rodzajów baz danych NoSQL:

  • operujące na dokumentach
  • operujące na grafach
  • służące do przechowywania danych klucz wartość (w pamięci RAM, na dysku, uporządkowane, z ustaloną hierarchią)
  • operujące na obiektach
  • zapisujące struktury multivalue

Użycie bazy danych NoSQL tak naprawdę jest zdeterminowane przez nasz przypadek użycia: jakie dane chcemy przechowywać, jakie musimy posiadać minimalne prędkości odczytu/zapisu, jaki jest rozmiar zapisywanych danych, itd. Czyli jak zwykle decyzja nie jest prosta i musi być poprzedzona niezłym badaniem dostępnych możliwości. Póki co, wszystkich zainteresowanych zapraszam do tego artykułu na Wiki: http://en.wikipedia.org/wiki/NoSQL

Dodaj komentarz