Course Code: pysprkub
Duration: 21 hours
Prerequisites:
Deelnemers moeten beschikken over:
- Praktische ervaring met Python-programmeren, waaronder functies, modules en basisobjectgerichte concepten.
- Basis- tot intermediaire ervaring met het werken aan Pandas en workflows voor tabulaire dataverwerking.
- Basiskennis van PySpark en Spark DataFrames, waaronder het inlezen van data, transformaties, acties, joins en aggregaties.
- Een algemene begrip van SQL en dataverwerkingsconcepten, waaronder filtreren, groeperen en joinen van datasets.
- Basiskennis van Docker- en Kubernetes-concepten, zoals containers, images en pods. Er is geen ervaring met Kubernetes-beheer vereist.
- Basisbegrip van veelvoorkomende dataformaten zoals CSV, JSON en Parquet.
Deelnemers hoeven geen Kubernetes-beheerders of infrastructuurspecialisten te zijn. De cursus richt zich op hoe data-engineers, ontwikkelaars en data-wetenschappers hun Spark-workloads die op Kubernetes draaien, vanuit het perspectief van toepassing en configuratie kunnen begrijpen en optimaliseren.
Doeleindgroep
Deze cursus is ontworpen voor professionals die dataverwerkings- en machinelearning-workloads ontwikkelen, onderhouden of optimaliseren met Python en Spark in cloud- of gecontaineriseerde omgevingen.
Hij is met name geschikt voor:
- Data-Engineers die werken met PySpark, gedistribueerde dataverwerking en ETL-pipelines.
- Data-Wetenschappers die grote datasets verwerken of machinelearning-workloads draaien met Spark, Pandas of Polars.
- Python-Ontwikkelaars die werken aan data-intensieve toepassingen en streven naar betere geheugenefficiëntie en verwerkingsprestaties.
- Machine Learning Engineers die data-voorbereiding en modeltrainingsworkloads beheren op gedeelde Kubernetes- of cloudomgevingen.
- Analyse Engineers die werken met grote datasets en streven naar verbeterde dataverwerkingsefficiëntie.
- DevOps-, Platform- en Cloud Engineers die Spark-workloads op Kubernetes ondersteunen en moeten begrijpen hoe configuratie op toepassingsniveau het bronverbruik en de prestaties beïnvloedt.
- Technische Leiders en Solution Architects die betrokken zijn bij het ontwerpen of optimaliseren van moderne dataverwerkingsplatforms.
Overview:
Deze driedaagse praktische cursus richt zich op het bouwen en optimaliseren van efficiënte dataverwerkingsworkloads met PySpark, Pandas en Polars in Kubernetes-gebaseerde omgevingen.
Deelnemers krijgen een praktisch inzicht in hoe Spark-toepassingen op Kubernetes worden uitgevoerd en hoe beslissingen over configuratie op toepassingsniveau de prestaties, schaalbaarheid, bronverbruik en kosten beïnvloeden. De cursus dekt belangrijke optimalisatiegebieden, waaronder executorgrootte, geheugentoewijzing, dynamische toewijzing, partitioneringsstrategieën, shuffle-gedrag, het probleem van kleine bestanden en efficiënte Parquet-verwerking.
De cursus behandelt ook veelvoorkomende uitdagingen bij het werken met Pandas, zoals geheugenbeperkingen en out-of-memory-fouten, en introduceert Polars als een hoogwaardig alternatief voor geselecteerde dataverwerkingsworkloads. Tijdens praktische oefeningen diagnosticeren deelnemers prestatie- en geheugenproblemen, vergelijken ze verschillende configuratiestrategieën en passen ze optimalisatietechnieken toe op realistische ETL- en machinelearning-scenario's.
De nadruk ligt tijdens de hele cursus op praktisch beslissen: begrijpen hoe knelpunten te identificeren zijn, het juiste tool te selecteren, Spark efficiënt te configureren en de balans te vinden tussen prestaties, infrastructuurbronverbruik en kosten.
Course Outline:
Module 1: Fundamenten van Big Data & Spark
- Overzicht van het Big Data-ecosysteem en de rol van Spark in moderne data-platforms
- Inzicht in de architectuur van Spark: driver, executors, cluster manager, lazy evaluation, DAG en uitvoeringsplanning
- Verschillen tussen RDD- en DataFrame-API's en wanneer elke aanpak te gebruiken
- Aanmaken en configureren van een SparkSession en fundamentele begrippen van toepassingsconfiguratie begrijpen
Module 2: PySpark DataFrames
- Data inlezen en schrijven vanuit bedrijfsbronnen en formaten: CSV, JSON, Parquet en Delta
- Werken met PySpark DataFrames: transformaties, acties, kolomexpressies, filtreren, joins en aggregaties
- Implementeren van geavanceerde operaties zoals window functions, afhandelen van timestamps en werken met geneste data
- Toegeven van datakwaliteitscontroles en het schrijven van herbruikbare, onderhoudbare PySpark-code
Module 3: Basis van Kubernetes & Docker voor Spark-gebruikers
- Snappen hoe Docker-images en Kubernetes-pods samenhangen met Spark driver- en executor-processen — een conceptueel overzicht voor clustergebruikers, niet beheerders
- Inzicht krijgen in wat er gebeurt wanneer een Spark-job op Kubernetes draait: pod-planning, bronverzoeken en limieten, en hoe sessie-instellingen hierop worden afgebeeld
- Begrip van wat u controleert via Spark-sessieparameters versus wat het platformteam beheert via clusterprovisie — en waarom deze grens van belang is voor tuning
- Praktische oefening: Onderzoek een draaiende Spark-on-Kubernetes-job in de sandbox-cluster en identificeer de driver- en executor-pods
Module 4: Spark-sessieconfiguratie op Kubernetes — Diepte-inzicht
- Executor-aantal versus executorgrootte: afwegingen tussen geheugen en cores en hoe hierover na te denken
- Geheugentoewijzing voor driver en executor, geheugenoverhead, en hoe deze zich vertalen tot pod-bronnen
- Dynamische toewijzing: hoe dit op Kubernetes werkt, wanneer het bronnen bespaart en wanneer niet
- Praktische oefening: Voer dezelfde job uit met verschillende executor- en core-configuraties en vergelijk de runtime en het bronverbruik
Module 5: Schaalgedrag & Kostenoptimalisatie
- Inzicht in hoe toevoegen of verwijderen van nodes het gedrag, de voltooiingstijd en het bronverbruik van een job verandert
- Veel kleine executors vergelijken met minder grote: prestatie- en kostenafwegingen
- Shuffle-gedrag en tuning van shuffle-partities, inclusief schatting van de kostenvolgen van keuzes in de configuratie
- Praktische oefening: Schaal de sandbox-cluster op van vijf naar tien nodes en observeer het effect op de job-voltooiingstijd en het bronverbruik
Module 6: Efficiënte Data-inname & Partitionering
- Inzicht in het kleine-bestandenprobleem: waarom bronnen die verspreid zijn over veel kleine (1–5 MB) Parquet-bestanden de prestaties verlagen en de partitionering vervormen
- Strategieën voor repartitioneren en coalescen
- Partitiesgrootte beheren bij het inlezen en schrijven
- Parquet efficiënt schrijven om het kleine-bestandenprobleem downstream te vermijden
- Praktische oefening: Laad een dataset op die bestaat uit veel kleine Parquet-partities, pas verschillende repartitioneringsstrategieën toe en vergelijk de prestaties vóór en ná optimalisatie
Module 7: Geheugenbeheer & Foutdiagnose in Pandas
- De onderliggende oorzaken van out-of-memory-fouten in Pandas begrijpen en de symptomen herkennen
- Geheugenefficiënte conversiemodellen toepassen tussen Spark en Pandas
- Geheugenexplosies vermijden bij het schrijven van grote datasets naar CSV
- Chunkverwerking en dtype-optimalisatie gebruiken in beperkte omgevingen
- Praktische oefening: Reproduceer een typische Pandas-out-of-memory-situatie en los deze op met chunking en dtype-optimalisatie
Module 8: Polars als aanvullend tool
- Polars positioneren ten opzichte van Pandas: prestatiekenmerken, lazy evaluation en gedrag van het geheugen
- Begrijpen waar Polars past naast PySpark en Pandas in moderne cloud-datastacks en migratiepaden, inclusief AWS-omgevingen
- Praktische oefening: Herschrijf een Pandas-intensieve transformatie in Polars en vergelijk het geheugengebruik en de verwerkingssnelheid
Module 9: Toepassing van optimalisatie op ETL- & ML-workloads
- Configuratie-, partitionerings- en geheugenbeheerprincipes toepassen op een realistische ETL-pipeline
- Optimalisatieoverwegingen begrijpen die specifiek zijn voor machinelearning-workloads die op dezelfde cluster draaien
- Een praktische tuning-workflow toepassen om kosten- en prestatieproblemen systematisch te diagnosticeren
- Praktische oefening: Voltooi een end-to-end miniproject dat data-inlezen, transformatie en een eenvoudige modeltrainingsstap combineert, waarbij deelnemers de Spark-configuratie zelf tunen
Sites Published:
United Arab Emirates - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Qatar - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Egypt - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Saudi Arabia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
South Africa - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Brasil - Processamento Eficiente de Dados no Kubernetes com PySpark, Pandas e Polars
Canada - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
中国 - 基于Kubernetes使用PySpark、Pandas和Polars实现高效数据处理
香港 - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
澳門 - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
台灣 - 使用PySpark、Pandas和Polars在Kubernetes上進行高效資料處理
USA - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Österreich - Effiziente Datenverarbeitung mit PySpark, Pandas und Polars auf Kubernetes
Schweiz - Effiziente Datenverarbeitung mit PySpark, Pandas und Polars auf Kubernetes
Deutschland - Effiziente Datenverarbeitung mit PySpark, Pandas und Polars auf Kubernetes
Czech Republic - Efektivní zpracování dat v Kubernetes pomocí PySpark, Pandas a Polars
Denmark - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Estonia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Finland - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Greece - Αποτελεσματική Επεξεργασία Δεδομένων σε Kubernetes με PySpark, Pandas & Polars
Magyarország - Hatékony adatfeldolgozás Kubernetesben PySpark, Pandas és Polars segítségével
Ireland - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Luxembourg - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Latvia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
España - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Italia - Elaborazione dati efficiente su Kubernetes con PySpark, Pandas e Polars
Lithuania - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Nederland - Efficiënte verwerking van data op Kubernetes met PySpark, Pandas & Polars
Norway - Effektiv databehandling på Kubernetes med PySpark, Pandas og Polars
Portugal - Processamento Eficiente de Dados no Kubernetes com PySpark, Pandas e Polars
România - Procesare eficientă a datelor pe Kubernetes cu PySpark, Pandas & Polars
Sverige - Effektiv datahantering med PySpark, Pandas och Polars på Kubernetes
Türkiye - Kubernetes Ortamında PySpark, Pandas ve Polars ile Verimli Veri İşleme
Malta - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Belgique - Traitement efficace des données sur Kubernetes avec PySpark, Pandas et Polars
France - Traitement efficace des données sur Kubernetes avec PySpark, Pandas et Polars
日本 - KubernetesにおけるPySpark、Pandas、Polarsによる効率的なデータ処理
Australia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Malaysia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
New Zealand - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Philippines - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Singapore - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Thailand - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Vietnam - Xử lý dữ liệu hiệu quả trên Kubernetes bằng PySpark, Pandas & Polars
India - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Argentina - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Chile - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Costa Rica - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Ecuador - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Guatemala - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Colombia - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
México - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Panama - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Peru - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Uruguay - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Venezuela - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Polska - Skuteczne przetwarzanie danych w Kubernetesie z wykorzystaniem PySpark, Pandas i Polars
United Kingdom - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
South Korea - PySpark, Pandas 및 Polars를 활용한 Kubernetes에서 효율적인 데이터 처리
Pakistan - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Sri Lanka - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Bulgaria - Ефективна обработка на данни в Kubernetes с PySpark, Pandas и Polars
Bolivia - Procesamiento de datos eficiente en Kubernetes con PySpark, Pandas y Polars
Indonesia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Kazakhstan - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Moldova - Procesare eficientă a datelor pe Kubernetes cu PySpark, Pandas & Polars
Morocco - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Tunisia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Kuwait - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Oman - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Slovakia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Kenya - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Nigeria - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Botswana - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Slovenia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Croatia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Serbia - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Bhutan - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Nepal - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
Uzbekistan - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars
US Government - Efficient Data Processing on Kubernetes with PySpark, Pandas & Polars