Inhaltsverzeichnis
- Abstract
- Überblick
- Lernziele
- Zielgruppe
- Voraussetzungen
- Inhalte
- Praxis-Labs
- Technischer Rahmen
Abstract
Aufbau produktionsnaher Datenservices mit Arrow Flight: hochperformantes Streaming von RecordBatches, kontrollierter Zugriff, sowie SQL‑fähige Schnittstellen über Flight SQL.
Dauer: 2 Tage
Format: Präsenz oder Live-Online
Überblick
Arrow Flight ist ein Protokoll für schnellen Datentransfer von Arrow‑Daten über gRPC. Im Seminar wird die Architektur von Flight‑Services praxisnah aufgebaut.
Ein besonderer Fokus liegt auf Schnittstellendesign, Sicherheit, Parallelisierung und operativen Aspekten wie Observability.
Lernziele
- Flight Konzepte (Descriptor, Ticket, Endpoint, Stream) sicher anwenden
- Server‑ und Client‑Implementierungen entwerfen und implementieren
- Authentifizierung, Autorisierung und Transportverschlüsselung integrieren
- Backpressure, Chunking und Parallelismus für Durchsatz optimieren
- Flight SQL als standardisierte Abfrage‑Schnittstelle einsetzen
- Betriebsaspekte: Logging, Metriken, Tracing und Fehlerbilder
Zielgruppe
- Backend‑Entwickelnde für Datenservices
- Plattform‑Teams, die Datenzugriff standardisieren
- Data Engineers mit Bedarf an schnellen Export/Import‑Pipelines
Voraussetzungen
- Grundlagen von Arrow Schemas/RecordBatches empfohlen
- Programmiererfahrung in Python oder Java
- Grundverständnis zu Netzwerk‑ und Service‑Konzepten hilfreich
Inhalte
Modul 1: Flight Architektur
- Flight Server, Client und zentrale API‑Konzepte
- Descriptor, Ticketing, Endpoint Discovery
- RecordBatch Streaming und Fehlersemantik
Modul 2: Sicherheit und Zugriff
- Auth‑Mechanismen, Token‑Flows, Rollenmodelle
- TLS und Zertifikatsmanagement
- Mandantenfähigkeit und Datenisolierung
Modul 3: Performance‑Design
- Chunking‑Strategien, Parallel Streams, Kompression
- Backpressure und Ressourcenlimits
- Benchmark‑Methodik für Throughput und Latenz
Modul 4: Flight SQL
- SQL‑Metadaten, Prepared Statements, Result Sets
- Integration in Engines oder eigene Ausführungslogik
- Kompatibilität und Client‑Strategien
Modul 5: Betrieb
- Beobachtbarkeit: Metriken, Logs, Traces
- Fehlerbilder: Timeouts, Partial Reads, Schema‑Mismatch
- Deployment‑Patterns und SLO‑Überlegungen
Praxis-Labs
Lab 1: Minimaler Flight Service
- Schema und RecordBatches für Beispiel‑Dataset definieren
- Flight Server mit GetFlightInfo und DoGet implementieren
- Client implementieren und Ergebnisvalidierung hinzufügen
- Fehlerfälle simulieren und robuste Responses ableiten
Lab 2: Sicherheit und Mandantenfähigkeit
- Token‑basierte Authentifizierung ergänzen
- Autorisierungsregeln pro Dataset/Partition definieren
- TLS aktivieren und lokale Zertifikate konfigurieren
- Audit‑Logs und Minimal‑Metriken ergänzen
Lab 3: Flight SQL Endpunkt
- Flight SQL Methoden für Metadaten und Statement Execution implementieren
- SQL‑Requests auf eine Engine oder vektorisiertes Compute abbilden
- Parallelisierung testen und Grenzen dokumentieren
- Client‑Abfragen reproduzierbar als Testsuite ausführen
Technischer Rahmen
- Python oder Java als Implementierungssprache
- Lokale gRPC‑Kommunikation, optional Container‑Deployment
- Beispiel‑Metriken über einfache Endpunkte oder Logs
- Übungsdaten lokal, keine Cloud‑Abhängigkeiten
