Katalog
concept#Daten#Plattform#Architektur#Integration

Event Streaming

Architekturparadigma zur kontinuierlichen Übertragung und Verarbeitung von Ereignissen als Datenströme.

Event Streaming beschreibt die kontinuierliche Erzeugung, Übertragung und Verarbeitung von Ereignissen in Form von zeitlich geordneten Datenströmen.
Etabliert
Hoch

Klassifikation

  • Hoch
  • Technisch
  • Architektur
  • Fortgeschritten

Technischer Kontext

Apache KafkaCloudEvents-kompatible GatewaysStream-Processing-Engines (Flink, Kafka Streams)

Prinzipien & Ziele

Ereignisse als primäre IntegrationsschnittstelleLose Kopplung durch asynchrone KommunikationPersistente, unveränderliche Logs für Nachvollziehbarkeit
Umsetzung
Unternehmen, Domäne, Team

Use Cases & Szenarien

Kompromisse

  • Datenverlust bei falscher Konfiguration
  • Eventual Consistency führt zu komplexeren Fehlerfällen
  • Fehlende Governance kann zu Wildwuchs führen
  • Ereignis-Schemas zentral verwalten (Schema Registry)
  • Idempotente Konsumenten implementieren
  • Retention-/Archiving-Strategien festlegen

I/O & Ressourcen

  • Quellsysteme, die Ereignisse erzeugen (APIs, DB-CDC)
  • Event-Schema und Versionierungsregeln
  • Infrastruktur für Broker und Speicher
  • Konsumenten-Streams für Anwendungen und Analysen
  • Persistente Ereignis-Logs für Audits
  • Monitoring-Metriken und SLAs

Beschreibung

Event Streaming beschreibt die kontinuierliche Erzeugung, Übertragung und Verarbeitung von Ereignissen in Form von zeitlich geordneten Datenströmen. Es ermöglicht skalierbare, lose gekoppelte Architekturen für Echtzeit-Analysen, Integrationen und Asynchronität. Typische Plattformen sind Apache Kafka und CloudEvents-konforme Infrastrukturen. Sie reduziert Latenz und vereinfacht Datenflüsse zwischen Diensten.

  • Skalierbarkeit bei hohem Durchsatz
  • Geringere Latenz für Echtzeit-Use-Cases
  • Bessere Entkopplung von Diensten

  • Komplexität in Betrieb und Fehlersuche
  • Erfordert geeignetes Monitoring und Observability
  • Schema- und Versionierungsmanagement notwendig

  • End-to-End-Latenz

    Zeit vom Erzeugen bis zur Verarbeitung eines Ereignisses.

  • Durchsatz (Events/s)

    Anzahl verarbeiteter Ereignisse pro Sekunde.

  • Fehlerrate / verlorene Ereignisse

    Anteil nicht zugestellter oder verlorener Nachrichten.

Apache Kafka als Backbone

Verwendung von Kafka für hohe Durchsatzraten und persistente Logs in verteilten Systemen.

CloudEvents für Interoperabilität

Standardisiertes Ereignisformat für plattformübergreifende Integration und Routing.

Stream-Processing mit Apache Flink

Stateful Stream-Processing für komplexe Aggregationen und Fensterfunktionen.

1

Anforderungen und SLAs für Latenz und Durchsatz definieren

2

Passende Broker- und Storage-Architektur auswählen

3

Event-Schemata und Governance-Richtlinien einführen

4

Consumer-Topologien und Repartitionierungsstrategie planen

5

Observability, Backpressure und Fehlertoleranz testen

⚠️ Technische Schulden & Engpässe

  • Ad-hoc Topics ohne Governance
  • Veraltete Schemata ohne Migrationspfad
  • Fehlende automatisierte Tests für Konsumenten
NetzwerkbandbreitePartition-HotspotsSpeicher-IO
  • Ereignisse mit zu großem Payload als Standard nutzen
  • Nur kurze Retention ohne Archivierung für Compliance
  • Fehlende Quell-Konsumenten-Isolation führt zu Seiteneffekten
  • Unterschätzung der Observability-Anforderungen
  • Nicht berücksichtigte Daten-Schema-Änderungen
  • Ungenügende Planung von Partitionierungsstrategien
Verständnis verteilter SystemeBetrieb und Sizing von Messaging-PlattformenSchema-Design und Versionierung
Echtzeit-VerarbeitungSkalierbarkeit und DurchsatzDatenpersistenz und Nachvollziehbarkeit
  • Begrenzter Speicher für Retention
  • Netzwerk-Latenz zwischen Regionen
  • Compliance-Anforderungen für Ereignisdaten