Bazy Danych noSQL

Fundamenty dla baz danych noSQL powstały w latach 2006-2007 wraz z rozwiązaniami takimi jak BigTable (Google) i Dynamo (Amazon).
W latach 2007-2009 powstały najważniejsze z obecnie funkcjonujących baz danych noSQL: MongoDB, HBase, Redis, Cassandra, Neo4j.

Zainteresowanie bazami danych z tego nurtu związane jest ze wzrostem zapotrzebowania na rozwiązania pozwalające przetwarzać dane w sposób odpowiedni dla globalnych usług i platform Internetowych, wzrostem przetwarzanych ilości danych o charakterystyce, która nie zawsze współgra ze starymi dobrymi relacyjnymi bazami danych.

Kurs przedstawia wybrane bazy danych i silniki przetwarzania danych - liderów w swoich kategoriach wśród baz danych noSQL.

W zależności od konfiguracji i oczekiwań słuchaczy, kurs omawia:

  • MongoDB - dokumentowy model danych
  • Neo4j - grafowy model danych
  • Cassandra - model danych oparty o rodziny kolumn
  • Redis - model danych klucz-wartość
  • Elasticsearch i Kibana - silnik wyszukiwań i wizualizacja danych
  • Esper - silnik przetwarzania danych strumieniowych
  • eXist - dokumentowa baza danych oparta o format XML
  • Elementy Big Data (HDFS, HBase) - gdzie bazy danych nurtu noSQL są szczególnie użyteczne

Struktura kursu

Kurs podzielony jest na tematy. Każdy z tematów obejmuje wykład wprowadzający i ewentualny opis warsztatu/zestawu zadań.

Wykład ilustrowany jest slajdami.

Zestawy zadań mają charakter zadań do samodzielnego wykonania.

Lista tematów

Literatura

  1. Cassandra: The Definitive Guide
    Autorzy: Carpenter, Jeff; Hewitt, Eben
    Wydawnictwo: O'Reilly Media, Inc., 2016
  2. Graph Databases
    Autorzy: Robinson, Ian; Webber, Jim; Eifrem, Emil
    Wydawnictwo: O'Reilly Media, Inc., 2015
  3. Redis Essentials
    Autorzy: Silva, Maxwell Dayvson Da.
    Wydawnictwo: Packt Publishing, 2015
  4. MongoDB: The Definitive Guide
    Autorzy: Chodorow, Kristina
    Wydawnictwo: O'Reilly Media, Inc., 2013
  5. Hadoop: The Definitive Guide
    Autorzy: White, Tom
    Wydawnictwo: O'Reilly Media, Inc., 2015
  6. neo4j - https://neo4j.com/docs/developer-manual/current/
  7. Redis - https://redis.io/documentation
  8. Cassandra - http://cassandra.apache.org/doc/latest/, https://docs.datastax.com/en/cassandra/3.0/
  9. Esper - http://www.espertech.com/esper/esper-documentation/
  10. MongoDB - https://docs.mongodb.com/
  11. eXist - https://exist-db.org/exist/apps/doc/documentation.xml