Projektowanie platformy Big Data z użyciem narzędzi z rodziny Apache
LICZBA DNI: 5 (40h)
KOD KURSU: BIGDATA/APACHE/JAVA
Weź udział w szkoleniu
Termin
Lokalizacja
Cena / os
29
marca
Warszawa,
Kraków,
Łódź,
Wrocław,
Gdańsk,
Poznań,
Zdalne,
Termin
29
marca
Lokalizacja
Warszawa,
Kraków,
Łódź,
Wrocław,
Gdańsk,
Poznań,
Zdalne,
Cena / os
Powiadom
o kolejnych terminach
O szkoleniu
DLA KOGO?
Programiści chcący poznać podstawy Big Data
WYMAGANIA
Praktyczna wiedza z programowania obiektowego w języku Java
ZALETY
Warsztatowy charakter zajęć
Użycie wielu różnych narzędzi niezbędnych w codziennej pracy z Big Data
Ćwiczenia praktyczne odbywają się w środowisku chmury obliczeniowej (Google Cloud Platform)
Cele szkolenia
Praktyczna umiejętność projektowania platformy do przetwarzania dużej ilości danych
Zdobycie wiedzy na temat powszechnie używanych narzędzi typu open-source w Big Data
Program
Wprowadzenie do świata Big Data
- Przedstawienie domeny
- Problemy Big Data - wydajność, skalowalność, dostępność
- Przykład systemów Big Data i stosowanych rozwiązań
- Przegląd technologii Big Data
Programowanie w Scala
- Zalety programowania funkcyjnego
- Różnice w stosunku do języka Java
- Elementy języka wykorzystywane w kontekście Big Data
- Ćwiczenia praktyczne (case class, companion object, pattern matching, implicit)
Formaty plików
- JSON
- Avro
- Parquet
- Comparison of efficiency
- Best suited formats for Big Data tools
Apache Spark
- Architektura i konfiguracja
- RDD vs Dataset vs DataFrame
- DataFrame UDF vs Dataset API
- Transformacje
- Uruchamianie jobów
- Zaawansowane konstrukcje
- Spark-catalyst i techniki optymalizacji - deep dive
- Debugging
- Spark unit testing
- Koncept data partitioning i shuffling
- Integracja z Apache Hadoop
- Spark streaming
Apache Spark Streaming
- Przetwarzanie real-time
- Zastosowanie Spark Streaming
- Projektowanie joba przetwarzającego dane strumieniowo
- Checkpointing
- Exactly-once delivery possibilities
Apache Hadoop
- Wstęp do architektury
- Opis poszczególnych komponentów (HDFS, YARN, MapReduce)
- Porównanie MapReduce oraz Spark jobs
- Hive (zapytania, architektura, partycjonowanie)
- Spark on YARN
- Gromadzenie logów i debugging
Apache NiFi
- Automatyzacja pobierania danych z różnych źródeł
- Architektura
- Przykładowe zastosowania
- Integracja danych między MySQL i GCS
- Przykłady transformacji danych
- Partycjonowanie danych przy zapisie
Apache Kafka
- Architektura
- Porównanie z podobnymi narzędziami
- Pub/Sub vs Producer/Consumer
- Tworzenie i konfiguracja producenta oraz konsumenta
- Topic i partycjonowanie
- Consumer groups
- Replikacje i retencja
- ZooKeeper
Apache Druid
- Opis i architektura
- Struktura danych
- Zarządzanie komponentami
- Indeksacja danych
- Druid i platformy Big Data oparte na Apache Hadoop
- Przetwarzanie real-time i batch
- Druid rollup, segments i granularność zapytań
Apache Airflow
- Automatyzacja przetwarzań
- Tworzenie data pipeline
- Python vs Bash
- Definiowanie Dagów
- Architektura
