Aktualisiert: 14. Juni 2024
Mitwirkender: Cole Stryker
Eine Datenpipeline ist eine Methode, bei der Rohdaten aus verschiedenen Datenquellen erfasst, transformiert und dann zur Analyse in einen Datenspeicher wie einen Data Lake oder ein Data Warehouse übertragen werden.
Bevor Daten in ein Datenrepository eingespeist werden, werden sie in der Regel einer Datenverarbeitung unterzogen. Dies beinhaltet Datenkonvertierungen wie Filterung, Maskierung und Aggregationen, die eine angemessene Datenintegration und Standardisierung sicherstellen. Dies ist besonders wichtig, wenn das Ziel für den Datensatz eine relationale Datenbank ist. Diese Art von Datenrepository verfügt über ein definiertes Schema, das eine Ausrichtung erfordert, d. h. übereinstimmende Datenspalten und -typen, um vorhandene Daten mit neuen Daten zu aktualisieren.
Wie der Name nahelegt, funktionieren Datenpipelines als „Leitungssysteme“ für Data-Science-Projekte oder Business Intelligence-Dashboards. Daten können aus den verschiedensten Quellen stammen – z. B. APIs, SQL- und NoSQL-Datenbanken, Dateien usw. – aber leider können diese Daten meist nicht direkt verwendet werden. Während der Beschaffung wird die Datenabstammung verfolgt, um die Beziehung zwischen Unternehmensdaten in verschiedenen Geschäfts- und IT-Anwendungen zu dokumentieren, z. B. wo Daten aktuell sind und wie sie in einer Umgebung gespeichert werden, z. B. vor Ort, in einem Data Lake oder in einem Data Warehouse.
Aufgaben im Bereich der Datenaufbereitung werden in der Regel von Data Scientists oder Dateningenieuren durchgeführt, die die Daten strukturieren, um den Anforderungen des Geschäftsanwendungsfalls gerecht zu werden, und riesige Datenmengen verarbeiten. Die Art der Datenverarbeitung, die eine Datenpipeline erfordert, wird normalerweise durch eine Mischung aus explorativer Datenanalyse und definierten Geschäftsanforderungen bestimmt. Sobald die Daten entsprechend gefiltert, zusammengeführt und zusammengefasst wurden, können sie gespeichert und zur Nutzung bereitgestellt werden. Gut organisierte Datenpipelines stellen die Grundlage für die verschiedensten Datenprojekte bereit; dies kann explorative Datenanalysen, Datenvisualisierungen und Aufgaben des maschinellen Lernens umfassen.
Skalieren Sie KI-Workloads standortunabhängig für alle Ihre Daten.
Es gibt mehrere Haupttypen von Datenpipelines, die jeweils für bestimmte Aufgaben auf bestimmten Plattformen geeignet sind.
Die Entwicklung der Stapelverarbeitung war ein wichtiger Schritt bei der Erstellung von zuverlässigen und skalierbaren Dateninfrastrukturen. Im Jahr 2004 wurde MapReduce, ein Stapelverarbeitungsalgorithmus, patentiert und anschließend in Open-Source-Systeme wie Hadoop, CouchDB und MongoDB integriert.
Wie der Name nahelegt, werden bei der Stapelverarbeitung „Stapel" von Daten innerhalb von festgelegten Zeitintervallen, die normalerweise außerhalb der Hauptgeschäftszeiten geplant werden, in ein Repository geladen. Auf diese Weise werden andere Workloads nicht beeinflusst, da Stapelverarbeitungsjobs in der Regel mit großen Datenvolumen arbeiten, die das Gesamtsystem strapazieren können. Die Stapelverarbeitung ist normalerweise die optimale Datenpipeline, sofern keine direkte Notwendigkeit besteht, einen bestimmten Datensatz (z. B. monatliche Buchhaltung) zu analysieren, und eher dem ETL-Datenintegrationsprozess zugeordnet, was für „extrahieren, transformieren und laden“ steht.
Stapelverarbeitungsjobs bilden einen Workflow aus folgegebundenen Befehlen, wobei die Ausgabe eines Befehls zur Eingabe des nächsten Befehls wird. Beispielsweise kann ein Befehl eine Datenaufnahme starten, der nächste Befehl die Filterung bestimmter Spalten auslösen und der darauffolgende Befehl eine Aggregation abwickeln. Diese Befehlsreihe wird fortgesetzt, bis die Datenqualität vollständig transformiert und in ein Daten-Repository geschrieben wurde.
Im Gegensatz zur Stapelverarbeitung verarbeiten Streaming-Datenpipelines – auch bekannt als ereignisgesteuerte Architekturen – kontinuierlich Ereignisse, die von verschiedenen Quellen wie Sensoren oder Benutzerinteraktionen innerhalb einer Anwendung generiert wurden. Ereignisse werden verarbeitet und analysiert und dann entweder in Datenbanken gespeichert oder zur weiteren Analyse weitergeleitet.
Streaming-Daten werden genutzt, wenn Daten fortlaufend aktualisiert werden müssen. Apps oder Point-of-Sale-Systeme benötigen beispielsweise Echtzeitdaten, um den Bestand und die Verkaufshistorie ihrer Produkte zu aktualisieren; Auf diese Weise können Verkäufer Verbraucher darüber informieren, ob ein Produkt vorrätig ist oder nicht. Eine einzelne Aktion, beispielsweise ein Produktverkauf, wird als „Ereignis“ betrachtet, und verwandte Ereignisse, beispielsweise das Hinzufügen eines Artikels zur Kasse, werden in der Regel als „Thema“ oder „Stream“ gruppiert. Diese Ereignisse werden dann über Messaging-Systeme oder Nachrichtenbroker wie z. B. die Open-Source-Lösung Apache Kafka übertragen.
Da Datenereignisse kurz nach Auftreten verarbeitet werden, haben Streamingverarbeitungssysteme eine niedrigere Latenz als Stapelsysteme, gelten aber als weniger zuverlässig als diese, weil Nachrichten unbeabsichtigt aufgegeben oder lange Zeit in der Warteschlange bleiben können. Nachrichtenbroker tragen dazu bei, dieses Problem durch Bestätigungen anzugehen, wobei ein Nutzer dem Broker die Verarbeitung der Nachricht bestätigt, um diese aus der Warteschlange zu löschen.
Pipelines für die Datenintegration konzentrieren sich auf die Zusammenführung von Daten aus mehreren Quellen in einer einheitlichen Ansicht. Diese Pipelines umfassen oft ETL-Prozesse (Extrahieren, Transformieren und Laden), die Rohdaten bereinigen, anreichern oder anderweitig ändern, bevor sie in einem zentralen Repository wie einem Data Warehouse oder Data Lake gespeichert werden. Datenintegrationspipelines sind unerlässlich für den Umgang mit verteilten Systemen, die inkompatible Formate oder Strukturen generieren. Beispielsweise kann eine Verbindung zu Amazon S3 (Amazon Simple Storage Service) hinzugefügt werden – einem Service, der von Amazon Web Services (AWS) angeboten wird und Objektspeicher über eine Web-Service-Oberfläche bereitstellt.
Eine moderne Datenplattform umfasst eine Suite von cloudnativen Cloud-First-Softwareprodukten, die die Erfassung, Bereinigung, Transformation und Analyse der Daten eines Unternehmens ermöglichen, um die Entscheidungsfindung zu verbessern. Die heutigen Datenpipelines werden immer komplexer und bedeutender für Datenanalysen und datengesteuerte Entscheidungen. Eine moderne Datenplattform schafft Vertrauen in diese Daten, indem sie sie in einer Weise aufnimmt, speichert, verarbeitet und umwandelt, die genaue und zeitnahe Informationen gewährleistet, Datensilos reduziert, Self-Service ermöglicht und die Datenqualität verbessert.
Drei Kernschritte bilden die Architektur einer Datenpipeline.
1. Datenaufnahme: Daten werden aus verschiedenen Datenquellen erfasst – darunter Software-as-a-Service (SaaS)-Plattformen, Internet-of-Things (IoT)-Geräte und mobilen Geräte – und mit unterschiedlichen Datenstrukturen, sowohl strukturierten als auch unstrukturierten Daten. Bei Streaming-Daten werden diese Rohdatenquellen üblicherweise als Produzenten, Bereitsteller oder Absender bezeichnet. Während Unternehmen entscheiden können, Daten nur dann zu extrahieren, wenn sie für die Verarbeitung bereit sind, ist es besser, die Rohdaten zuerst bei einem Cloud-Data-Warehouse-Anbieter zu speichern. Auf diese Weise kann das Unternehmen historische Daten aktualisieren, wenn es Anpassungen an Datenverarbeitungsaufträgen vornehmen muss. Während dieses Datenerfassungsprozesses können verschiedene Validierungen und Prüfungen durchgeführt werden, um die Konsistenz und Genauigkeit der Daten sicherzustellen.
2. Datentransformation: In diesem Schritt werden mehrere Jobs ausgeführt, um Daten in das vom Zieldatenrepository benötigte Format zu bringen. Diese Jobs betten Automation und Governance für sich wiederholende Workstreams wie das Erstellen von Geschäftsberichten ein, und sorgen dafür, dass Daten durchgängig bereinigt und transformiert werden. So kann ein Datenstrom beispielsweise ein verschachteltes JSON-Format aufweisen, und bei der Datentransformation wird versucht, diese JSON aufzulösen, um die wichtigen Felder für die Analyse zu extrahieren.
3. Datenspeicherung: Die transformierten Daten werden dann innerhalb eines Datenrepositorys gespeichert, wo sie verschiedenen Stakeholdern zugänglich gemacht werden können. Bei Streaming-Daten werden diese transformierten Daten in der Regel als Verbraucher, Abonnenten oder Empfänger bezeichnet.
Sie stellen möglicherweise fest, dass einige Begriffe wie Datenpipeline und ETL-Pipeline synonym verwendet werden. Allerdings sollten Sie ETL-Pipelines als Unterkategorie von Datenpipelines betrachten. Die beiden Arten von Pipelines unterscheiden sich durch drei wichtige Merkmale:
Da Big Data weiter zunehmen, wird Datenverwaltung zu einer immer höheren Priorität. Während Datenpipelines verschiedene Funktionen erfüllen, handelt es sich bei den folgenden um drei umfassende Geschäftsanwendungen:
IBM® DataStage ist ein branchenweit erstklassiges Datenintegrationstool zur Konzeption, Entwicklung und Abwicklung von Jobs, bei denen Daten verschoben und transformiert werden.
IBM® Data Replication ist eine Software zur Datensynchronisation, die mehrere Datenspeicher nahezu in Echtzeit miteinander synchronisiert. Außerdem ist IBM Data Replication eine Lösung mit geringer Auswirkung, die nur die vom Protokoll erfassten Datenänderungen verfolgt.
IBM® Databand ist eine Observability-Software für Datenpipelines und Warehouses, die automatisch Metadaten erfasst, um historische Referenzwerte zu erstellen, Anomalien zu erkennen, Warnungen zu priorisieren und den Zustand und die Zuverlässigkeit von Apache Airflow Directed Acyclic Graphs (DAGs) zu überwachen.
IBM® watsonx.data ist ein zweckmäßiger Datenspeicher, der auf einer Open-Data-Lakehouse-Architektur basiert, um Analyse- und KI-Workloads für alle Ihre Daten und überall zu skalieren.
Lesen Sie im SmartPaper, wie Sie eine solide Datengrundlage für KI schaffen, indem Sie sich auf drei zentrale Bereiche der Datenverwaltung konzentrieren: Zugriff, Governance sowie Datenschutz und Compliance.
Erfahren Sie, wie die State Bank of India mehrere IBM Lösungen zusammen mit der IBM Garage™ Methodik zur Entwicklung einer umfassenden Online-Banking-Plattform eingesetzt hat.