Szkolenie PySpark
Poziom
ŚredniozaawansowanyCzas
32h / 4 dniTermin
IndywidualnieCena
IndywidualnieSzkolenie z PySpark
PySpark to biblioteka dla Apache Spark, która umożliwia tworzenie i uruchamianie zadań rozproszonych na klastrach w języku Python. PySpark zapewnia interfejs API do pracy z danymi rozproszonymi przez Spark, a także dostęp do wszystkich funkcji Spark, takich jak mapowanie, agregacja, filtrowanie i grupowanie danych. PySpark jest licznie wykorzystywany w Big Data, analizie danych i uczeniu maszynowym.
Dla kogo jest szkolenie z PySpark?
Dla programistów ze znajomością języka Python
Dla osób, które chcą poznać jedno z najpopularniejszych narzędzi do przetwarzania danych.
Dla analityków ze znajomością języka Python.
Dla specjalistów Data Scientist.
Czego się nauczysz na szkoleniu PySpark
- Zastosowań Apache Spark w organizacji oraz miejsca technologii Big Data w ekosystemie danych
- Pracy z danymi w PySpark: RDD oraz DataFrame API, transformacje, agregacje, łączenia i operacje okienkowe
- Wykorzystania Spark SQL oraz podstaw Spark ML w zadaniach analitycznych (pipeline, walidacja, metryki)
- Uruchamiania, testowania i optymalizacji zadań (zasoby klastra, partycjonowanie, cache, konfiguracja, Structured Streaming)Moduł 1 – Architektura Apache Spark – miejsce w ekosystemie Big Data • Komponenty klastra Spark • Model wykonania driver/executor • Tryby uruchomienia i zarządzanie zasobami • Podstawy bezpieczeństwa danych i sekretów Moduł 2 – RDDs – podstawy przetwarzania rozproszonego w Apache Spark • Transformacje i akcje RDD • Partycjonowanie i trwałość danych • Broadcast variables i akumulatory • Zastosowania RDD vs DataFrame Moduł 3 – Różnice składni Pythona i PySparka; RDD a Pandas DataFrame • Typy danych i schematy • Serializacja i koszty wykonania w Python worker • Interoperacyjność Spark ↔ pandas (Arrow) • Pułapki wydajności (collect, toPandas, skew) Moduł 4 – Zmienne, partycjonowanie oraz zagadnienia Spark Project Core • DAG i lazy evaluation • Cache/persist i poziomy przechowywania • Shuffle, skew i praktyki minimalizacji kosztów • Konfiguracja Spark i parametry uruchomieniowe Moduł 5 – Spark SQL (praca na DF, składnia, schematy, joiny, agregacje) • DataFrame API i Spark SQL • Schematy, typy i nullability • Strategie joinów i optymalizacja • Funkcje okienkowe i agregacje Moduł 6 – Spark ML • Przegląd MLlib i pipeline ML • Inżynieria cech w Spark • Walidacja i strojenie (CV) • Metryki jakości i ryzyko data leakage Moduł 7 – Prototypowanie • Notebooki i środowiska uruchomieniowe • Konfiguracja sesji i reproducibility • Wersjonowanie kodu i zależności • Artefakty uruchomień (logi, metryki, modele) Moduł 8 – Uruchamianie i zarządzanie zadaniami w klastrze • spark-submit i konfiguracja jobów • Dobór zasobów (executors/cores/memory) • Kolejkowanie i izolacja środowisk • Integracja z orkiestracją i harmonogramowaniem Moduł 9 – Testowanie procesów • Testy transformacji danych • Testy jakości danych i reguły walidacji • Deterministyczność wyników i kontrola losowości • Testy wydajności i benchmarki Moduł 10 – Optymalizacja i konfiguracja zadań • Spark UI i analiza planu wykonania • AQE i optymalizacje Catalyst • Format danych i partycjonowanie (I/O) • Koszty shuffle i praktyki ograniczania przestojów Moduł 11 – Spark Structured Streaming • Źródła i ujścia danych strumieniowych • Okna czasowe i watermarks • Semantyka przetwarzania i opóźnienia • Checkpointing i obsługa błędów Moduł 12 – Sesja Q&A • Przegląd pytań i problemów uczestników • Dyskusja rozwiązań i alternatyw • Rekomendacje dalszych kroków rozwoju • Podsumowanie kluczowych praktyk i pułapek
Program szkolenia
Moduł 1 – Architektura Apache Spark – miejsce w ekosystemie Big Data
- Komponenty klastra Spark
- Model wykonania driver/executor
- Tryby uruchomienia i zarządzanie zasobami
- Podstawy bezpieczeństwa danych i sekretów
Moduł 2 – RDDs – podstawy przetwarzania rozproszonego w Apache Spark
- Transformacje i akcje RDD
- Partycjonowanie i trwałość danych
- Broadcast variables i akumulatory
- Zastosowania RDD vs DataFrame
Moduł 3 – Różnice składni Pythona i PySparka – RDD a Pandas DataFrame
- Typy danych i schematy • Serializacja i koszty wykonania w Python worker
- Interoperacyjność Spark ↔ pandas (Arrow)
- Pułapki wydajności (collect, toPandas, skew)
Moduł 4 – Zmienne, partycjonowanie oraz zagadnienia Spark Project Core
- DAG i lazy evaluation
- Cache/persist i poziomy przechowywania
- Shuffle, skew i praktyki minimalizacji kosztów
- Konfiguracja Spark i parametry uruchomieniowe
Moduł 5 – Spark SQL (praca na DF, składnia, schematy, joiny, agregacje)
- DataFrame API i Spark SQL
- Schematy, typy i nullability
- Strategie joinów i optymalizacja
- Funkcje okienkowe i agregacje
Moduł 6 – Spark ML
- Przegląd MLlib i pipeline ML
- Inżynieria cech w Spark
- Walidacja i strojenie (CV)
- Metryki jakości i ryzyko data leakage
Moduł 7 – Prototypowanie
- Notebooki i środowiska uruchomieniowe
- Konfiguracja sesji i reproducibility
- Wersjonowanie kodu i zależności
- Artefakty uruchomień (logi, metryki, modele)
Moduł 8 – Uruchamianie i zarządzanie zadaniami w klastrze
- spark-submit i konfiguracja jobów
- Dobór zasobów (executors/cores/memory)
- Kolejkowanie i izolacja środowisk
- Integracja z orkiestracją i harmonogramowaniem
Moduł 9 – Testowanie procesów
- Testy transformacji danych
- Testy jakości danych i reguły walidacji
- Deterministyczność wyników i kontrola losowości
- Testy wydajności i benchmarki
Moduł 10 – Optymalizacja i konfiguracja zadań
- Spark UI i analiza planu wykonania
- AQE i optymalizacje Catalyst
- Format danych i partycjonowanie (I/O)
- Koszty shuffle i praktyki ograniczania przestojów
Moduł 11 – Spark Structured Streaming
- Źródła i ujścia danych strumieniowych
- Okna czasowe i watermarks
- Semantyka przetwarzania i opóźnienia
- Checkpointing i obsługa błędów
Moduł 12 – Sesja Q&A
- Przegląd pytań i problemów uczestników
- Dyskusja rozwiązań i alternatyw
- Rekomendacje dalszych kroków rozwoju
- Podsumowanie kluczowych praktyk i pułapek