Begriffe, Architekturen, Produkte: Große Datenmengen in Echtzeit analysieren

Wer sich auch nur oberflächlich mit Big-Data und Echtzeit-Analyse beschäftigt, stößt schnell auf Begriffe und Lösungen, die sich nicht sofort erschließen. Warum brauche ich eine Nachrichten-Queue und was unterscheidet Apache Hadoop von Kafka? Welche Rolle spielt das in einer Kappa-Architektur?

Artikel von George Anadiotis, übersetzt von veröffentlicht am  (aktualisiert am )
Echtzeitverarbeitung erfordert ein anderes Paradigma im Umgang mit Daten.
Echtzeitverarbeitung erfordert ein anderes Paradigma im Umgang mit Daten. (Bild: Pixabay)

Schieben wir im realen Leben Entscheidungen auf, droht uns der aufgetürmte Stapel an Problemen schnell zu erschlagen. In IT-unterstützten Abläufen sind Stapelverarbeitung und Batch-Betrieb hingegen immer noch an der Tagesordnung. Wären dabei nicht auch Entscheidungen in Echtzeit praxisnäher?

Inhalt:
  1. Begriffe, Architekturen, Produkte: Große Datenmengen in Echtzeit analysieren
  2. Die Verarbeitung unbeschränkter Mengen und die Kappa-Architektur
  3. Streaming-Systeme für Big Data

Für diese scheinbar naive Frage gibt es eine ganze Reihe komplexer, alles andere als naiver Antworten. Zum Teil ist das die Folge bestehender Programmierparadigmen und -praktiken, zum anderen Folge der verwendeten Infrastruktur zur Datenverwaltung. Doch hauptsächlich liegt es daran, dass Echtzeit einfach schwierig ist. Doch wer bereit ist, sich damit auseinanderzusetzen, und das ist mittlerweile deutlich einfacher geworden, kann davon profitieren.

Betrachten wir ein Beispiel aus dem Alltag des Einzelhandels. Der Online-Einkauf ist heute eine Selbstverständlichkeit. Doch wer würde als Kunde aktiv versuchen, eine Lösung zu finden, wenn der Bezahlvorgang scheitert? Viel eher bricht er den Bestellvorgang ab. Die meisten Einzelhändler würden dem Kunden dann gerne Hilfe anbieten, um ihn nicht zu verlieren.

Manche Händler betreiben ein Callcenter oder bieten Hilfe per E-Mail. Doch auch hier muss der Kunde aktiv werden. Viel besser wäre es doch, wenn der Händler die Bestellvorgänge, die Transaktionen, analysieren und solche Probleme in Echtzeit erkennen und den Kunden dann proaktiv kontaktieren könnte.

Stellenmarkt
  1. IT Project Manager (m/w/d) Business Applications
    SICK AG, Waldkirch
  2. Java Softwareentwickler (m/w/d)
    Brückner Maschinenbau GmbH & Co. KG, Siegsdorf
Detailsuche

Nun gibt es bereits Analysewerkzeuge und datengetriebene Entscheidungsprozesse, die sich dafür anbieten und zunehmend Verbreitung finden. Die Vorstellung, durch die Analyse von Daten neue Erkenntnisse zu gewinnen, ist nicht neu. Jede Anwendung erzeugt Daten und es gibt eine Vielzahl von Werkzeugen für Datenanalysen. Wir könnten annehmen, dass etablierte Analyseprozesse zur Überwachung von Transaktionen unser Problem lösen könnten. Leider ist das nicht der Fall. Wir benötigen tatsächlich echtzeitfähige Analyseprozesse.

Datenanalyse und die Lambda-Architektur

Traditionell werden Datenanalysen auf einer Kopie der operativen Daten durchgeführt. Dafür gibt es gute Gründe, da sich die Anforderungen an eine Datenbank für den Alltagsbetrieb und die Analyse unterscheiden. Im Alltag sollen die ACID-Eigenschaften einen störungsfreien und sicheren Betrieb gewährleisten. Sie sorgen aber auch für mehr Aufwand in der Datenverarbeitung.

Deshalb wurden Datenbanksysteme entwickelt, die praktischer für die Datenanalyse sind. Sie werden häufig als Data Warehouses bezeichnet und verzichten zum Beispiel auf ACID-Eigenschaften. Außerdem folgen sie anderen Speicherkonzepten als klassische Datenbanken.

Eines dieser Systeme ist Hadoop. Im Gegensatz zu typischen Data Warehouses unterstützt es nicht nur relationale Datenstrukturen, sondern auch unstrukturierte und semi-strukturierte Daten wie XML, JSON, Dokument- und Bildformate. Doch wie andere Data-Warehouse-Systeme wurde auch Hadoop nicht für Echtzeit-Aufgaben konzipiert, sondern setzt auf die Stapelverarbeitung von Daten.

Ganz gleich ob klassisches Data Warehouse oder Hadoop: Um Anwendungsdaten zu analysieren, müssen sie zuerst aus der eigentlichen operativen Datenbank übertragen werden. Dieser Prozess erfordert einiges an Verarbeitung, die als ETL (Extract, Transform, Load) bezeichnet wird. In sogenannten ETL-Pipelines durchlaufen die Daten eine Reihe von Verarbeitungsschritten, einen zumeist zeitintensiven Vorgang.

Das führte zur Einführung der Lambda-Architektur. Diese hybride Architektur kombiniert drei Bestandteile: Das Batch Layer führt eine umfassende Analyse der gesamten Datenmenge per Stapelverarbeitung durch. Das Speed Layer zielt auf die sofortige, schnelle Verarbeitung neu eingetroffener Daten, wobei die Analyseergebnisse häufig nur angenähert sind. Dem einheitlichen Zugriff auf die Analyseergebnisse dient das Serving Layer.

Das Problem mit der Lambda-Architektur besteht laut dem Big-Data-Entwickler Dean Wampler darin, dass "ohne ein Werkzeug [..], das zur Implementierung von Batch- und Streaming-Jobs verwendet werden kann, die Logik zweimal implementiert werden muss: einmal mit den Tools für den Batch-Layer und dann noch einmal für den Speed-Layer. Auch der Serving-Layer erfordert in der Regel benutzerdefinierte Tools für die Integration der beiden Datenquellen."

Das bedeutet viel Komplexität, schlechte Reaktionszeiten und hohe Betreuungskosten. Deshalb wird die Lambda-Architektur von vielen als ein reines Übergangsmodell betrachtet. Um auf unser Ausgangsproblem zurückzukommen: Nicht durch die Lambda-Architektur ist es großen Händlern gelungen, die Zahl der abgebrochenen Onlinebestellungen um 80 Prozent zu reduzieren, das gelang nur durch Echtzeit-Analysen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Die Verarbeitung unbeschränkter Mengen und die Kappa-Architektur 
  1. 1
  2. 2
  3. 3
  4.  


Aktuell auf der Startseite von Golem.de
Framework Laptop im Hardware-Test
Schrauber aller Länder, vereinigt euch!

Der modulare Framework Laptop ist ein wahrgewordener Basteltraum. Und unsere Begeisterung für das, was damit alles möglich ist, lässt sich nur schwer bändigen.
Ein Test von Oliver Nickel und Sebastian Grüner

Framework Laptop im Hardware-Test: Schrauber aller Länder, vereinigt euch!
Artikel
  1. FTTH: Liberty Network startet noch mal in Deutschland
    FTTH
    Liberty Network startet noch mal in Deutschland

    Das erste FTTH-Projekt ist gescheitert. Jetzt wandert Liberty von Brandenburg nach Bayern an den Starnberger See.

  2. Hauptuntersuchung: Tesla Model S beim TÜV nur knapp vor Verbrennern von Dacia
    Hauptuntersuchung
    Tesla Model S beim TÜV nur knapp vor Verbrennern von Dacia

    Bei den TÜV-Prüfungen schneidet das Model S nicht viel besser ab als sehr günstige Verbrenner. Andere E-Autos sind da besser.

  3. Raumfahrt: China schleppt defekten Satelliten ab
    Raumfahrt
    China schleppt defekten Satelliten ab

    Ein nicht funktionsfähiger Satellit wurde mit Hilfe eines weiteren Satelliten dorthin verbracht, wo er keine Gefahr darstellt.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • RTX 3080 12GB 1.499€ • iPhone 13 Pro 512GB 1.349€ • DXRacer Gaming-Stuhl 159€ • LG OLED 55 Zoll 1.149€ • PS5 Digital mit o2-Vertrag bestellbar • Prime-Filme für je 0,99€ leihen • One Plus Nord 2 335€ • Intel i7 3,6Ghz 399€ • Alternate: u.a. Sennheiser Gaming-Headset 169,90€ [Werbung]
    •  /