Seminar PyArrow & Python Data Engineering

Inhaltsverzeichnis

  • Abstract
  • Überblick
  • Lernziele
  • Zielgruppe
  • Voraussetzungen
  • Inhalte
  • Praxis-Labs
  • Technischer Rahmen

Abstract

Vertiefung für Python‑basierte Datenpipelines: effizientes Laden, Transformieren und Schreiben großer Datenmengen mit PyArrow. Schwerpunkt auf Dataset‑API, Parquet‑Strategien und vektorisierten Compute‑Kernels.

Dauer: 3 Tage

Format: Präsenz oder Live-Online

Überblick

PyArrow bildet die Brücke zwischen Python‑Ökosystem und Arrow‑Speicherformat. Im Seminar wird der Weg von Rohdaten bis zu produktionsfähigen Pipelines Schritt für Schritt aufgebaut.

Ein Fokus liegt auf dem Zusammenspiel aus Dataset‑Scanning, Partitionierung, Pushdown‑Optimierung und Compute‑Operatoren.

Lernziele

  • PyArrow Datenstrukturen idiomatisch in Python einsetzen
  • Parquet‑Datasets effizient lesen und schreiben (Partitionierung, Row Groups, Statistics)
  • Dataset‑API für Scans, Filter, Projektionen und Join‑Vorstufen nutzen
  • Compute‑Kernels für Transformationen, Aggregationen und Feature‑Engineering anwenden
  • Interop mit pandas und Polars ohne unnötige Kopien gestalten
  • Performance‑Stellhebel systematisch messen und priorisieren

Zielgruppe

  • Python Data Engineers, Analytics Engineers und ML‑Engineers
  • Teams, die Parquet‑basierte Data Lakes betreiben
  • Entwickelnde, die Pipeline‑Kosten (IO/CPU) reduzieren wollen

Voraussetzungen

  • Sicherer Umgang mit Python (Funktionen, Packaging, virtuelle Umgebungen)
  • Grundlagen zu DataFrames hilfreich
  • Grundverständnis von Arrow‑Konzepten empfohlen (oder vorheriges Grundlagen‑Seminar)

Inhalte

Modul 1: PyArrow Kernobjekte

  • Array, ChunkedArray, Table, RecordBatch, Schema
  • Datentypen, Nullability, Dictionary Encoding, Extension Types
  • Speicherverwaltung: Memory Pool, Chunking, Slicing

Modul 2: Dataset‑API und Scans

  • Dataset vs. Table‑Load, Scanner‑Konzept
  • Projection/Filter Pushdown, Partition Pruning
  • Datei‑ und Partition‑Layouts, Hive‑Partitioning, Custom Partitioning

Modul 3: Parquet Deep Dive

  • Row Groups, Column Chunks, Encoding und Kompression
  • Statistiken, Bloom‑Filter‑Konzepte, Write‑Optionen
  • Schema‑Evolution und konsistente Datensätze

Modul 4: Compute‑Kernels und Transformation

  • Vectorized Compute, Expressions, Casting und String‑Funktionen
  • Gruppierung, Aggregation, Window‑ähnliche Muster
  • Feature‑Engineering‑Bausteine und Validierungsregeln

Modul 5: Interop und Pipeline‑Architektur

  • pandas/NumPy/Polars Interop, Copy‑Grenzen
  • Streaming‑Ingestion und inkrementelle Writes
  • Testbarkeit, Determinismus und Datenqualitätschecks

Praxis-Labs

Lab 1: Dataset‑Scan mit Pushdown

  1. Partitioniertes Parquet‑Dataset erzeugen
  2. Scanner mit Projektion und Filter konfigurieren
  3. Partition Pruning verifizieren und Scan‑Metriken sammeln
  4. Chunk‑Größen variieren und Laufzeit vergleichen

Lab 2: Feature‑Engineering vektorisiert

  1. Compute‑Expressions für Bereinigung, Casts und Derivationen aufbauen
  2. Aggregationen und gruppierte Kennzahlen berechnen
  3. Qualitätsregeln implementieren (Null‑Quoten, Wertebereiche, Duplikate)
  4. Ergebnisse in ein versioniertes Dataset schreiben

Lab 3: Interop ohne Overhead

  1. Arrow Table in pandas/Polars übergeben und Kopien identifizieren
  2. Memory‑Hotspots profilieren und optimieren
  3. Persistenzoptionen (Parquet Settings) für IO‑ vs. CPU‑Budget abstimmen
  4. Mini‑Pipeline als wiederverwendbares Modul paketieren

Technischer Rahmen

  • Python 3.x, virtuelle Umgebung oder Container
  • Optional: Jupyter für explorative Schritte
  • Lokale Übungsdaten, keine externen Services erforderlich
  • Optional: CI‑Beispiel für reproduzierbare Pipeline‑Runs
Nach oben
Seminare als Stream SRI zertifiziert
© 2026 www.seminar-experts.at All rights reserved.  | Kontakt | Impressum | Nach oben