Menu Zamknij

Bazy danych NoSQL

Harmonogram

Dzień 1

  • Wprowadzenie do baz danych NoSQL
  • MongoDB – dokumentowe bazy danych
    • podstawy
    • zapytania
    • indeksy
    • administracja

Dzień 2

  • Redis – bazy danych klucz-wartość
    • podstawy
    • typy złożone
    • elementy zaawansowane (dodatek)
    • administracja (dodatek)
  • Neo4j – grafowe bazy danych
    • podstawy
    • język Cypher

Dzień 3

  • Cassandra – bazy danych oparte o model rodziny-kolumn
    • wprowadzenie
    • język CQL
  • Elasticsearch i Kibana – analiza i wizualizacja danych
    • Elasticsearch
    • Kibana

Wprowadzenie

Mimo iż początki baz danych nierelacyjnych sięgają do ubiegłego wieku (można tu wymienić choćby bazy danych dokumentów XML), to uważa się, że „nowożytne” 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 wynika głównie z dwóch przyczyn. Pierwszą jest wzrost zapotrzebowania na rozwiązania pozwalające przetwarzać dane w sposób odpowiedni dla globalnych usług i platform Internetowych. Drugim jest konieczność przetwarzania dużych ilości danych, co nie zawsze współgra z możliwościami starych dobrych relacyjnych baz 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

Dzień 1. Wprowadzenie, dokumentowe bazy danych

  1. Wprowadzenie do baz danych NoSQL
  2. MongoDB – podstawy
  3. MongoDB – zapytania
  4. MongoDB – indeksy i zaawansowane zapytania (dodatek)
  5. MongoDB – administracja (dodatek)

Dzień 2. Bazy danych klucz-wartość, grafowe bazy danych

  1. Redis – podstawy
  2. Redis – typy złożone
  3. Redis – elementy zaawansowane (dodatek)
  4. Redis – administracja (dodatek)
  5. Neo4j – podstawy
  6. Neo4j – język Cypher
  7. Neo4j – algorytmy (dodatek)

Dzień 3. Bazy danych oparte o rodziny kolumn, silniki wyszukiwań, wizualizacja danych

  1. Cassandra – wprowadzenie
  2. Cassandra – język CQL
  3. Elasticsearch
  4. Kibana