Big Data

Ilość danych generowanych w logach serwerów WWW, aplikacji mobilnych czy webowych, generowanych przez Internet przedmiotów czy różnorakie sensory, często przekracza rozmiary, które mogą być swobodnie przetwarzana przez scentralizowane rozwiązania oparte o tradycyjne bazy danych. Ponadto charakter tych danych - regularny szybki przyrost i żadnych zmian w danych już zebranych, zupełnie nie odpowiada modelowi przetwarzania danych w bazach danych, gdzie zakłada się ich regularne modyfikacje i usuwanie.

Dla tego typu danych odpowiednimi środowiskami bytowania są rozwiązania typu Big Data. Hadoop, Hive, Pig, czy wreszcie Spark ze swą wydajnością, rozbudowaną funkcjonalnością, przy jednoczesnym zachowaniu ogólności, to czołowe produkty tego nurtu. Jeśli te składniki połączymy ze sobą w system przetwarzania danych zgodnie z architekturą Lambda otrzymamy rozwiązanie charakteryzujące się wszystkimi wymaganiami jakie stawia się systemom klasy Big Data.

W pełni autorski kurs Big Data rozpoczyna się od podstaw architektury Lambda, omawia platformę Hadooop, przedstawia jej podstawowe komponenty takie jak HDFS, YARN i MapReduce, omawia takie rozwiązania jak Pig czy Hive, porusza szczegółowo wsadowe i interaktywne przetwarzanie danych przy wykorzystaniu języka Scala i platformy Spark, analizuje najeważniejsze komponenty wykorzystywane do strumieniowego przetwarzania danych. Na zakończenie, pokrótce zatrzymuje się na bazie danych HBase oraz Elasticsearch, a także platformie wizualizacji danych Kibana.

Wymagana znajomość programowania obiektowego, ugruntowana wiedza z zakresu relacyjnych baz danych, dobra znajomość SQL-a...
Przydatna jest znajomość pojęć dotyczących tematyki Hurtowni Danych.

Struktura kursu

Kurs podzielony jest na tematy. Każdy z tematów obejmuje wykładowy materiał wprowadzający i zestaw ćwiczeń/zadań/tutoriali, który w praktyczny sposób pozwala zaznajomić się z przedstawianym tematem.

Materiał wykładowy ilustrowany jest slajdami z dużą liczbą przykładów.

Materiał praktyczny ma charakter zadań/tutoriali do samodzielnego wykonania.

Lista tematów

  1. Wprowadzenie

  2. HDFS, YARN

  3. Pig

  4. Hive

  5. Scala

  6. Spark - wprowadzenie

  7. Spark - RDD (podstawy)

  8. Spark - RDD (klucz-wartość)

  9. Spark - RDD (wydajność)

  10. Spark - DataFrame

  11. Spark - Dataset

  12. Spark - GraphX

  13. Spark Streaming

  14. Apache Kafka

  15. Spark - Structured Streaming

  16. Kafka Streaming

  17. HBase

  18. Elasticsearch

  19. Kibana