Die 5 besten Tipps für Datenintegrationsprobleme Tipp 4: So verarbeiten Sie Streaming-Daten

0

Streaming-Daten erfordern eine besondere Behandlung

Streaming-Daten erfordern eine besondere Behandlung

Die Beschaffenheit von Daten hat sich in den letzten Jahren rasant geändert: Streaming-Anwendungen mit ihrer hohen Aktualisierungsgeschwindigkeit erfordern einen ganz neuen Umgang mit den Daten. Deshalb sind viele Datenarchitekturen nicht für ihre Verarbeitung geeignet.

Während ich in den vorherigen Beiträgen dieser Serie beschrieben habe, wie man Daten anbindet und verwertet, die Performance von Datenabfragen verbessert und die Datenqualität erhöht, betrachte ich im vierten Beitrag Streaming-Daten.

Von den Grenzen konventioneller ETL-Tools

Viele Unternehmen nutzen ETL-Tools, um die Daten aus ihren verschiedenen Systemen – vom CRM-System bis hin zur Fertigungssteuerung – zu extrahieren und in das Data Warehouse zu laden. Herkömmliche ETL-Programme wie das Complex Event Processing (CEP) sind jedoch nicht dafür geeignet, mehrere Anwendungen mit Echtzeit-Datenfeeds synchron zu halten.

Die Data Warehouse-Architektur hat sich für deskriptive Analysen und historisches Reporting bewährt. Die Anforderungen dieser Architektur an Datenextraktion, Staging-Plattformen und die synchronisierte Datenvalidierung und -transformation verzögern jedoch den gesamten Prozess beträchtlich. Für Streaming-Anwendungen mit ihrer hohen Aktualisierungsgeschwindigkeit sind sie zudem nicht geeignet.

Gut zu wissen: Complex Event Processing eignet sich besonders für strukturierte Daten
CEP-Techniken liefern sehr gute Ergebnisse bei der Verarbeitung strukturierter Daten. Sie können jedoch nur eine gewisse Zahl von Vorgängen in der Sekunde verarbeiten. Fallen – wie bei Big Data – sehr große Mengen hauptsächlich unstrukturierter Daten an, müssen andere Methoden zum Einsatz kommen, die u.a.

  • große Datenströme parallel verarbeiten,
  • Daten linear skalieren,
  • Daten In-Memory analysieren und
  • Datenverarbeitung näher an die Datenquellen platzieren.

Die Lösung: das Data Warehouse mit einer Streaming Engine kombinieren

Um die Datenintegration massiv zu beschleunigen und die Daten nahezu in Echtzeit zu verarbeiten, ist es sinnvoll, dem eigentlichen ETL-Tool eine Streaming Engine wie etwa Apache Storm vorzuschalten. Eine solche Engine verarbeitet auch IoT- oder Maschinendaten.

Möchte man, dass die Daten unmittelbar auf einem Live-Dashboard erscheinen, sollte die Streaming Engine ein Datenintegrationstool nutzen, das eine Verbindung für das Dashboard bereitstellt. So erhält das Dashboard die Daten direkt aus dem ETL-Tool ohne den Umweg über das DWH. Werden die Streaming-Daten jedoch auch im Data Warehouse benötigt, zum Beispiel für die Historisierung oder die Anreicherung mit anderen Daten, dann ist es sinnvoll, sie aus der Streaming Engine zusätzlich in das DWH zu übertragen. Das sollte je nach Datenaufkommen mehrfach am Tag bzw. mehrfach pro Stunde geschehen.

Gut zu wissen: Mit Lambda schneller, flexibler und kostengünstiger sein
In großen Enterprise-Umgebungen empfehle ich, die Vorteile einer Lambda-Architektur zu nutzen:

  • Reduzierte Kosten
  • Skalierbarkeit und automatisierte Abläufe
  • Lambda verarbeitet Daten im Millisekunden-Bereich
  • Hohe Einsatzflexibilität

Eine umfassende Beschreibung dieser und vier weiterer Lösungen finden Sie im Whitepaper „Die 5 besten Lösungen für Datenintegration“.

Diese Artikel könnten Sie auch interessieren:

Tags: , , ,

Stefan Müller - Director Big Data Analytics
Nach mehreren Jahren Tätigkeit im Bereich Governance & Controlling und Sourcing Management ist Stefan Müller bei it-novum gelandet, wo er den Bereich Big Data Analytics aufgebaut hat. Stefans Herz schlägt für die Möglichkeiten, die die BI-Suiten von Pentaho und Jedox bieten, er beschäftigt sich aber auch mit anderen Open Source BI-Lösungen. Seine Begeisterung für Business Open Source im Bereich Datenintelligenz gibt Stefan regelmäßig in Fachartikeln, Statements und Vorträgen weiter.
Webprofile von Stefan: Twitter, LinkedIn, XING