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

ML w AWS – Sagemaker Autopilot

Automatyczne tworzenie modeli uczenia maszynowego z pełną widocznością w usłudze AWS Sagemaker – korzyści z wygenerowanego Jupyter Notebooka.

ML w AWS – Sagemaker Studio – IDE w przeglądarce

Sagemaker Studio – interaktywne środowisko dla Data Scientist. Z Jupyter Notebooks na pokładzie, oferuje współpracę, śledzenie eksperymentów i integrację z systemem kontroli wersji. Przegląd quasi …

ML w AWS – wstęp do usługi Sagemaker

Sagemaker: Wytwarzanie usług ML w chmurze AWS na nowym poziomie Odkryj potężną usługę Sagemaker, która gromadzi wszystkie niezbędne funkcjonalności związane z wytwarzaniem usług uczenia maszynowego w …

Rozwijasz czy produkujesz oprogramowanie?

Opracowywanie przepisów to proces uczenia się metodą prób i błędów. Nie oczekujesz, że pierwsza próba nowego dania wykonana przez szefa kuchni będzie ostatnią. W rzeczywistości …

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.