Das Storm-Projekt wird Top-Level-Projekt der Apache Software Foundation

Apache Storm ist reif für den Produktiveinsatz

| Autor / Redakteur: Thomas Drilling / Nico Litzel

Storm kümmert sich bei Hadoop 2 im Rahmen der Kern-Architektur Yarn um die Echzeitanalyse von Streaming-Daten.
Storm kümmert sich bei Hadoop 2 im Rahmen der Kern-Architektur Yarn um die Echzeitanalyse von Streaming-Daten. (Bild: T. Drilling)

Nach rund einem Jahr im Incubator der Apache Software Foundation (ASF) ist mit Storm ein weiteres Projekt aus dem Big-Data-Umfeld zum offiziellen Top-Level-Projekt der Open-Source-Stiftung befördert worden. Apache Storm ist ein fehlertolerantes, skalierbares System, das Datenströme in Echtzeit verarbeiten kann.

Das Entwickler-Team des Apache-Storm-Projekts hat bekannt gegeben, dass Storm von der Apache Software Foundation (ASF) zum Top-Level-Projekt befördert wurde. Die Apache Software Foundation bringt mit der Beförderung von Storm aus dem Incubator zum Ausdruck, dass sie Storm als stabil genug für einen produktiven Einsatz einstuft und dass sich rund um das Storm-Projekt eine agile Community entwickelt hat, welche in der Weiterentwicklung des Projektes gewährleisten kann.

Was ist Storm?

Apache Storm erlaubt die Echtzeitverarbeitung von Streaming-Daten und wird vom Initiator Nathan Marz und seinem Entwicklerteam als „distributed computation framework“ beschrieben. Storm ist ursprünglich bei Twitter entstanden und wurde später an die Apache Software Foundation übergeben. Prominente Storm-Nutzer sind neben Twitter unter anderem Yahoo, Microsoft, Cisco, Spotify, die B2B-Plattform Alibaba.com und das Rabattportal Groupon.

Storm und Hadoop

Storm ist darüber hinaus eine prominente Komponente des Hadoop-Ökosystems und erlaubt als Teil der Hadoop-Kern-Architektur YARN zusammen mit Apache Kafka den Echtzeitzugriff auf Streaming-Daten, ähnlich wie es Apache Hive für SQL- oder Apache Spark für In-Memory-Daten tun. Hadoop allein, also das HDFS-Dateisystem und der MapReduce-Algorithmus, sind bekanntlich nach dem Batch-Prinzip konzipiert und erlauben ohne Zusatzkomponenten keine Echtzeitanalyse großer Datenmengen. Im Prinzip hat Storm für die Echtzeit-Datenverarbeitung in etwa die Bedeutung, die Hadoop pur für das Batch-Processing hat, bzw. hatte.

Die Idee hinter Storm

Storm-Erfinder Nathan Marz wollte mit Storm drei zentrale Einsatzszenarien im Umfeld sozialer Netzwerke abdecken:

  • Ein auf der Echtzeitverarbeitung von Nachrichten beruhendes Aktualisieren von Datenbanken,
  • das fortlaufende Berechnen und Ausgeben der Ergebnisse (Continuous Computation) und
  • das Parallelisieren rechenintensive Anfragen mithilfe verteilter Remote Procedure Calls
Ergänzendes zum Thema
 
Die Architektur von Storm …

Neben dem neben eigentlichen Stream Processing und der Fähigkeit zur Ergebnisausgabe während der Verarbeitung kommt insbesondere das Parallelisieren rechenintensiver Anfragen zum Einsatz – beispielsweise bei Twitter zum Ermitteln der Reichweite eines Tweets. So kann Twitter feststellen, wie viele Nutzer ein Tweet erreicht hat.

Die Architektur von Storm

Storm ist horizontal skalierbar und in der Programmiersprache Clojure, einer dynamischen Programmiersprache für die Java Virtual Machine (JVM) geschrieben, wobei sich die jeweiligen JAR-Container in einem Cluster auf verschiedene Hosts verteilen lassen. Dabei sorgt der implementierte Überwachungsmechanismus bei Bedarf für ein Neustarten abgestürzter Worker-Threads.

Das API von Storm ist relativ überschaubar aufgebaut. Dabei soll es mit relativ geringen Aufwand möglich sei, mit nahezu jeder beliebigen Programmiersprache auf das Analysesystem zuzugreifen. Momentan bringt Storm Schnittstellen für Ruby und Python mit. Andere Programmiersprachen sollen sich aber bei Bedarf mit wenigen Codezeilen für eine Zusammenarbeit mit Storm anpassen lassen.

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 42972015 / Infrastruktur)