Build Predictive Machine Learning with Flink | Workshop on Dec 18 | Register Now

Daten-Streaming-Pipelines

Lösung Streaming Pipelines

Daten-Streaming-Pipelines ermöglichen eine kontinuierliche Datenaufnahme, -verarbeitung und -übertragung von den Quellen zum Ziel, in Echtzeit, sobald die Daten generiert werden. Diese Technologie, die auch als Streaming ETL und Echtzeit-Datenfluss bekannt ist, wird in zahlreichen Branchen eingesetzt, um Datenbanken in Live-Feeds für Streaming-Aufnahme und -Verarbeitung zu verwandeln und so die Datenbereitstellung, Echtzeiteinblicke und Analysen zu beschleunigen.

Confluents Daten-Streaming-Plattform wurde von den ursprünglichen Erfindern von Apache Kafka entwickelt. Sie automatisiert Daten-Pipelines in Echtzeit mit über 120 vorgefertigten Integrationen, Sicherheit, Governance und unzähligen Anwendungsfällen.

What Are Streaming Data Pipelines?

Streaming data pipelines move data from multiple sources to multiple target destinations in real time, capturing events as they are created and making them available for transformation, enrichment, and analysis. For many applications, real-time and continuously fresh data is vital. Examples include:

  • Mobile banking apps
  • GPS apps that recommend driving routes based on live traffic information
  • Smartwatches that track steps and heart rate
  • Personalized real-time recommendations in shopping or entertainment apps
  • Sensors in a factory where temperatures or other conditions need to be monitored to prevent safety incidents
SDP - graphic 1

Echtzeit. Im großen Maßstab.

Daten-Streaming-Pipelines unterstützen eine Vielzahl von Datenformaten aus heterogenen Datenquellen und können Millionen von Events pro Sekunde verarbeiten. Sie brechen Datensilos auf, indem sie Daten über Umgebungen hinweg streamen, Echtzeit-Datenflüsse erschließen und sie werden häufig zur Überbrückung von zwei System-Typen eingesetzt:

  • Operative Systeme, in denen Daten in verschiedenen Formaten in operativen Datenbanken gespeichert werden, die sich lokal oder in der Cloud befinden können.
  • Analytische Systeme, in denen Daten sich in einem Data Warehouse oder Data Lake befinden und für Echtzeitanalysen, Reports, BI-Dashboards und andere Data-Science-Initiativen verwendet werden.

Was bieten Daten-Streaming-Pipelines?

Echtzeitdatenflüsse

Durch die Übertragung und Umwandlung von Daten von der Quelle in die Zielsysteme, sobald sie entstehen, stellen Daten-Streaming-Pipelines immer die neuesten und zuverlässigsten Daten in einem leicht verwendbaren Format bereit. Dies erhöht die Agilität der Entwickler und liefert Unternehmen Erkenntnisse, um fundierte und proaktive Entscheidungen treffen können. Die Fähigkeit, intelligent und in Echtzeit auf Events zu reagieren, reduziert Risiken, generiert mehr Umsatz oder Kosteneinsparungen und ermöglicht personalisierte Kundenerlebnisse.

Stream-Verarbeitung in Echtzeit

Die Stream-Verarbeitung hat gegenüber der Batch-Verarbeitung erhebliche Vorteile, insbesondere im Hinblick auf die Datenlatenz. Batch-basierte ETL-Pipelines erfassen und transformieren Daten in regelmäßigen (meist nächtlichen) Batches. Im Gegensatz dazu ermöglicht die Stream-Verarbeitung, dass Daten in Echtzeit auf dem Weg zu den Zielsystemen kontinuierlich transformiert werden, sobald Daten generiert werden. Dies minimiert die Latenz und ermöglicht die Verwendung von Streaming-Daten für Anwendungsfälle wie die Betrugserkennung in Echtzeit. Weitere Informationen zu den verschiedenen Arten der Datenverarbeitung gibt es hier: Batch- vs. Stream-Verarbeitung.

Agile Pipeline-Entwicklung

Durch den Wegfall der manuellen Programmierung einzelner Daten-Pipelines verbringen Unternehmen weniger Zeit mit "Break-and-Fix" und mehr Zeit mit der innovativen Nutzung von Datenströmen und der Anpassung von Daten an sich ändernde Geschäftsanforderungen. Dank geringerer technischer Schulden und weniger Wartungsaufwand kann zudem die Datennutzung unternehmensweit besser gesteuert werden.

Skalierbare, fehlertolerante Cloud-Architektur

Dank der automatischen Skalierung und Elastizität in der Cloud können sich Unternehmen auf die Nutzung von Streaming-Daten statt auf die Verwaltung der Infrastruktur konzentrieren. Da Events kontinuierlich fließen, schützt die integrierte Fehlertoleranz Unternehmen vor Datenverlusten, verpassten Gelegenheiten und verzögerten Reaktionszeiten.

So funktionieren Daten-Streaming-Pipelines

Daten-Streaming-Pipelines führen kontinuierlich eine Reihe von Schritten aus, darunter die Aufnahme von Rohdaten, sobald sie generiert werden, ihre Bereinigung und die Anpassung der Ergebnisse an die Bedürfnisse des Unternehmens.

SDP-Grafik2

Aufnahme

Echtzeitdaten werden aus lokalen und cloudbasierten Datenquellen (z. B. Anwendungen, Datenbanken, IoT-Sensoren) in verschiedenen Formaten erfasst.

Stream-Verarbeitung

Datenmanipulation, -bereinigung, -umwandlung und -vorbereitung entfernt unbrauchbare Daten aus der Pipeline und macht die Daten fürs Monitoring, die Analyse und andere nachgelagerte Zwecke gebrauchsfertig.

Standardisierung von Schemas

Um Streaming-Daten vorzubereiten und zu analysieren, müssen diese konsistent in ein Standardschema strukturiert werden, einen Leitfaden, der festlegt und versteht, wie Daten organisiert sind. Die Einhaltung eines Standardschemas ermöglicht eine skalierbare Datenkompatibilität und reduziert gleichzeitig die operative Komplexität.

Stream-Monitoring

Um die Systeme, die kontinuierliche Events erzeugen, besser zu verstehen, nutzen die meisten Unternehmen Observability- und Monitoring-Funktionen für Event-Streams. Die Möglichkeit, zu sehen, was mit den Streams geschieht – wie viele Messages beispielsweise im Laufe der Zeit produziert oder konsumiert werden – hilft sicherzustellen, dass sie ordnungsgemäß funktionieren und Daten in Echtzeit und ohne Datenverlust zu liefern.

Message Broker

Ein Message Broker kümmert sich um die Bereitstellung und Übermittlung von Daten in der gesamten Daten-Streaming-Pipeline. Er stellt die Exactly-once-Verarbeitung sicher und wahrt die Integrität und Lineage der Daten.

Bereitstellung

Die Daten werden einer Vielzahl von Zielen und nachgelagerten Consumern zur Verfügung gestellt, die oft gleichzeitig Zugriff auf aktuelle und historische Daten benötigen. Um diese Anforderung zu erfüllen, umfassen viele Architekturen eine Kombination aus Datenspeicherung in Data Lakes, Data Warehouses und dem Message Broker selbst.

5 Prinzipien für den Aufbau moderner Daten-Streaming-Pipelines

1. Streaming

Datenströme und eine Streaming-Plattform ermöglichen es, hochwertige Repositorien wiederverwendbarer Daten auf Event-Level im Unternehmen bereitzuhalten, anstatt unzuverlässige, periodische Snapshots an externe Repositorien zu senden. Schemata dienen als Data Contract zwischen Producern und Consumern, um die Datenkompatibilität sicherzustellen.

2. Dezentralisiert

Domain-orientiertes, dezentrales Data-Ownership ermöglicht es den Teams, die am nächsten an den Daten dran sind, wiederverwendbare Datenströme zu erstellen, diese weiterzugeben und gemeinsam zu nutzen. Teams, die mit Self-Service-Daten arbeiten, können somit Datenströme ganz einfach und unternehmensweit veröffentlichen und abonnieren.

3. Deklarativ

Eine deklarative Sprache wie SQL ermöglicht es, die Logik des Datenflusses zu spezifizieren (woher die Daten kommen und wohin sie gehen), ohne sich um die grundlegenden operativen Details kümmern zu müssen, so dass die Infrastruktur umfangreiche Datenänderungen automatisch verarbeiten kann.

4. Entwicklerorientiert

Agile Entwicklungs- und CI/CD-Praktiken in Pipelines ermöglichen die Erstellung modularer, wiederverwendbarer Datenflüsse, die in verschiedenen Umgebungen weiterentwickelt, getestet, bereitgestellt und unabhängig versioniert werden können. Teammitglieder mit unterschiedlichen Fähigkeiten können gemeinsam an Pipelines arbeiten, mit Tools, die sowohl visuelle IDEs (Integrierte Entwicklungsumgebungen) als auch Code-Editoren unterstützen. Dies unterscheidet sich von herkömmlichen ETL-Tools, die in der Regel für Nicht-Entwickler gebaut werden.

5. Verwaltet

Das Gleichgewicht zwischen zentralen Standards für kontinuierliche Data-Observability, Sicherheit, Policy-Management und Compliance aufrecht halten und gleichzeitig für Sichtbarkeit, Transparenz und Kompatibilität der Daten mit intuitiver Suche, Discovery und Lineage sorgen, damit Innovationen schneller entwickelt werden können.

Beispiele für Anwendungsfälle

Migration in die Cloud

Daten-Streaming-Pipelines helfen dabei, On-Premise- und Multi-Cloud-Datenbanken in Echtzeit zu verbinden und zu synchronisieren, um die Migration oder Modernisierung der Anwendungsentwicklung zu ermöglichen und die Vorteile Cloud-nativer Tools zu nutzen. Events können verarbeitet und mit anderen Datenströmen angereichert werden, um neue Anwendungen zu entwickeln und den Wartungsaufwand und die Gesamtbetriebskosten älterer Datenbanken zu reduzieren. In unserer Demo zeigen wir, wie ein Oracle CDC-Connector via Stream-Verarbeitung Änderungen von einer Legacy-Datenbank zu einer Cloud-nativen Datenbank wie MongoDB streamt, um Betrug in Echtzeit zu erkennen.

Echtzeit-Analytics

Daten-Streaming-Pipelines helfen Unternehmen dabei, wertvolle Erkenntnisse zu gewinnen, indem sie Daten von lokalen Systemen in Cloud-Data Warehouses streamen, um Echtzeitanalysen, ML-Modellierung, Reporting und die Erstellung von BI-Dashboards zu ermöglichen. Die Verlagerung von Workloads in die Cloud bringt Flexibilität, Agilität und Kosteneffizienz für Computing und Speicherung. In dieser Demo zeigen wir, wie PostgreSQL CDC zum Streamen von Kundendaten, Stream-Verarbeitung zur Transformation von Daten in Echtzeit und ein Snowflake-Connector für Echtzeit-Data Warehousing und anschließende Analysen und Reports genutzt werden können.

SIEM-Optimierung

Daten-Streaming-Pipelines liefern kontextreiche Daten, die für ein besseres Situationsbewusstsein erforderlich sind, sie helfen bei der Automatisierung und Orchestrierung der Bedrohungserkennung, reduzieren False Positives und ermöglichen eine proaktive Abwehr von Bedrohungen und Cyberangriffen. Auf dieser Seite zeigen wir, wie Daten konsolidiert, kategorisiert und angereichert werden können (z. B. mit Protokollen, Netzwerkdaten, Telemetrie- und Sensordaten und Echtzeit-Events), um Unternehmen zur richtigen Zeit die richtigen Daten für Echtzeit-Monitoring und Security-Forensik zur Verfügung zu stellen.

Zugriff auf Mainframe-Daten

Daten-Streaming-Pipelines können den Zugriff auf kritische Daten, die sich in "Systems-of-Record" befinden, ermöglichen. Der Zugang zu Mainframe-Daten in Kombination mit weiteren Daten beseitigt Silos, ermöglicht neue Anwendungen, erhöht die Daten-Portabilität zwischen verschiedenen Systemen und senkt MIPS- und Netzwerkkosten. Weitere Informationen sind hier zu finden.

Warum Confluent

Wenn Daten direkt von der Quelle zu den Zielsystemen geleitet werden, entstehen Punkt-zu-Punkt-Verbindungen, die nicht skalierbar, schwer zu sichern und nicht kosteneffizient zu pflegen sind. Confluents vollständig verwaltetes Apache Kafka ist eine Daten-Streaming-Plattform, die als Rückgrat für die Datenintegration und den Aufbau erweiterbarer Daten-Streaming-Pipelines dient. Mit Confluent können Data-Producers und -Consumers entkoppelt und der Prozess des Zusammenfügens heterogener Systeme vernachlässigt werden.

Confluent bietet mehr als 120 vorgefertigte Quellen- und Senken-Connectors, die die Integration und das Streaming von Daten zwischen einer Vielzahl von Systemen in hybriden und Multi-Cloud-Umgebungen ermöglichen. 6 Monate oder sogar Jahre an Entwicklungszeit sparen und den operativen Aufwand reduzieren, indem vollständig verwaltete Connectors eingesetzt werden, die Teams Self-Service-Daten zur Verfügung stellen, wo und wann immer sie diese benötigen. Darüber hinaus können Datenströme in Echtzeit mit ksqlDB verarbeitet und transformiert werden und die Datenqualität und -einhaltung mit Stream Governance sichergestellt werden. Der Stream Designer von Confluent ist eine visuelle Benutzeroberfläche, die keinen Code erfordert, mit der Daten-Streaming-Pipelines in wenigen Minuten erstellt, getestet und bereitgestellt werden können.

Ressourcen