SQL vs NoSQL – świeże spojrzenie [SQL vs NoSQL 1/6]

Relacyjne bazy danych dominowały od połowy lat 80. przez prawie trzy dekady, co jest wiecznością w IT.  Od 2010 roku rozwiązania NoSQL rzucają rękawicę w walce o dominację. Minęła już dekada, przeżyliśmy fascynację bazami dokumentowymi (był przecież czas, że Mongo wychodziło nawet z lodówki), ale najprawdopodobniej w Twoim projekcie nadal używasz bazy relacyjnej. Czy to oznacza koniec konfliktu i przyznanie się do porażki uzurpatora? Zupełnie nie. To potrzeba jest matką wynalazków. Big Data stała się katalizatorem nowych rozwiązań w przestrzeni baz danych. NoSQL obrósł jednak wieloma mitami.

Co NoSQL tak naprawdę oznacza? Jakie były powody powstania baz NoSQL? Czym się różnica baza dokumentowa od relacyjnej? Jakie są kryteria wyboru bazy danych? Na te i inne pytania odpowiem Ci w serii artykułów. Co istotne, będzie o pojęciach i charakterystykach, a nie o konkretnych narzędziach.

  1. Definicje i mity SQL vs NoSQL
  2. Dlaczego powstały bazy NoSQL?
  3. Podział baz NoSQL ze względu na model danych (klucz-wartość, dokumentowe, rodzina kolumn, grafowe)
  4. Twierdzenie CAP, czyli kompromisy rozproszenia
  5. Kryteria wybru SQL vs NoSQL

Źródła

  1. Designing Data Intensive Applications, Martin Kleppmann 
  2. Introduction to NoSQL, Martin Fowler
  3. https://www.postgresql.org/docs/current/datatype-json.html 
  4. https://en.wikipedia.org/wiki/Apache_Cassandra

Udostępnij ten wpis


Dobrnąłeś do końca. Jeśli ten artykuł był dla Ciebie wartościowy i chcesz otrzymywać informacje o kolejnych, to zapraszam Cię do zapisania się do listy mailingowej. Gwarantuję zero spamu.

Radek.

Inne artykuły

Lean software development – eliminacja strat

Dowiedz się, jak wyeliminować marnotrawstwo i przyjąć zasady szczupłego rozwoju oprogramowania, aby dostarczyć więcej wartości swoim klientom przy mniejszym nakładzie pracy.

CD4ML: Continuous delivery for machine learning

Zacznijmy od początku: czym jest ciągłe dostarczanie (continuous delivery)? To podejście w wytwarzaniu oprogramowania, w którym wdrożenie nowej wersji jest decyzją biznesową. Ale jak to …

Dlaczego warto pisać? Jak pisać?

Pisania można się nauczyć; pisania, czyli myślenia. Na najbardziej abstrakcyjnych poziomach twój umysł jest zorganizowany w sposób werbalny. Tym samym jeśli dzięki pisaniu nauczysz się …

Transakcje ACID

W trakcie zapisu danych do bazy wiele rzeczy może pójść nie tak. Może zapełnić się dysk, połączenie sieciowe zostanie zerwane pomiędzy bazą a klientem, przewróci się aplikacja, która wysyła …
Partycjonowanie bazy danych okładka

Partycjonowanie bazy danych

Partycjonowanie pozwala podzielić tabelę na mniejsze części, gdzie każda z nich może się znajdować na innym serwerze. Zobacz, jak to działa oraz dlaczego jest to …