Fahrpläne in Echtzeit.
Daten, die bewegen.
Von statischen Dateien zu
skalierbaren Datenströmen.
Die Deutsche Bahn bewegt Millionen Menschen – und damit das zuverlässig funktioniert, braucht es mehr als nur Gleise.
Fahrplandaten gehören zu den komplexesten Informationssystemen im öffentlichen Verkehr. Sie sind detailliert, hochvernetzt – und müssen gleichzeitig stabil, aktuell und verlässlich sein. Für die Deutsche Bahn haben wir ein System entwickelt, das Soll-Fahrpläne aus dem Europäischen Fahrplanzentrum automatisiert verarbeitet und für verschiedene Abnehmersysteme bereitstellt. Der besondere Fokus lag auf der robusten Weiterverarbeitung von textbasierten Rohdaten in ein strukturiertes, verteilbares Format.
Dazu kamen technische Sonderfälle wie Durchbindungen und Vereinigungen im Schienenverkehr – bisher ungelöst, jetzt abgebildet. Wir haben die Datenlogik von Grund auf neu gedacht, eine skalierbare Architektur geschaffen und Prozesse etabliert, die auch in hochfrequenten Echtzeitumgebungen bestehen. Das Ergebnis: zuverlässige Datenflüsse, automatisierte Verarbeitung, bessere Information für Reisende – und ein System, das mitwächst.
Herausforderung
- Fahrplandaten sind komplex. Besonders, wenn sie aus dem Europäischen Fahrplanzentrum kommen – als Textdateien, voller Durchbindungen und Sonderfälle, täglich aktualisiert, aber für Echtzeitsysteme nicht sofort nutzbar.
- Gefragt war eine robuste Architektur für den Import, die Aggregation und die Transformation dieser Daten – inklusive Rechteverwaltung und Verteilung an verschiedene Abnehmersysteme.
Unsere Lösung
- Wir haben eine skalierbare Batch-Architektur auf Basis von Argo Workflows, Spring Batch und Aurora PostgreSQL aufgebaut.
- Die besonders komplexen Verbindungen im ÖPNV (Durchbindungen, Vereinigungen) haben wir mit einem neu entwickelten, graphbasierten Berechnungsansatz effizient gelöst.
- Die Business-Logik wurde als hochverfügbare Kafka-Streams-Microservices auf Kubernetes in AWS umgesetzt.
- Dazu: Erweiterung der CI/CD-Prozesse in GitLab, Einsatz von Renovate für automatisierte Updates – und das alles in einem agilen Setup.
Ergebnis
- Automatisierte, robuste Verarbeitung von Fahrplandaten
- Validierung und Transformation in Echtzeit
- Reibungslose Verteilung an angebundene Systeme
- Technisch zukunftssicher – und flexibel erweiterbar
Tech-Stack
- Kafka
- Spring Boot
- Kubernetes
- Aurora PostgreSQL
- AWS
- Argo
- GitLab CI/CD
- Renovate
- Java 17
- Prometheus
- RabbitMQ
- SonarQube