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
- Wprowadzenie do baz danych NoSQL
- Prezentacja
- Warsztat – wprowadzenie do środowiska warsztatów
- MongoDB – podstawy
- MongoDB – zapytania
- MongoDB – indeksy i zaawansowane zapytania (dodatek)
- MongoDB – administracja (dodatek)
Dzień 2. Bazy danych klucz-wartość, grafowe bazy danych
- Redis – podstawy
- Redis – typy złożone
- Redis – elementy zaawansowane (dodatek)
- Redis – administracja (dodatek)
- Neo4j – podstawy
- Neo4j – język Cypher
- Neo4j – algorytmy (dodatek)
Dzień 3. Bazy danych oparte o rodziny kolumn, silniki wyszukiwań, wizualizacja danych
- Cassandra – wprowadzenie
- Cassandra – język CQL
- Elasticsearch
- Kibana