Apache Storm

Un article de Wikipédia, l'encyclopédie libre.
Apache Storm
Description de l'image Apache Storm logo.svg.

Informations
Développé par Apache Software FoundationVoir et modifier les données sur Wikidata
Première version [1]Voir et modifier les données sur Wikidata
Dernière version 2.3.0 ()[2]Voir et modifier les données sur Wikidata
Dépôt git-wip-us.apache.org/repos/asf/storm.gitVoir et modifier les données sur Wikidata
Écrit en Clojure et JavaVoir et modifier les données sur Wikidata
Type Calcul distribué
Big dataVoir et modifier les données sur Wikidata
Licence Licence ApacheVoir et modifier les données sur Wikidata
Site web storm.apache.orgVoir et modifier les données sur Wikidata

Apache Storm est un framework de calcul de traitement de flux distribué, écrit principalement dans le langage de programmation Clojure. Créé à l'origine par Nathan Marz [3] et l'équipe de BackType [4] le projet est rendu open source après avoir été acquis par Twitter[5]. Il utilise des "spouts" et des "bolts" créés sur mesure pour définir les sources d'informations et les manipulations permettant un traitement par lots et distribué des données en continu. La première publication a eu lieu le [6].

Une application Storm est conçue comme une "topologie" sous la forme d'un graphe orienté acyclique (DAG) avec des spouts et des bolts faisant office de sommets du graphe. Les arêtes du graphe sont des flux nommés et dirigent les données d'un nœud à un autre. Ensemble, la topologie agit comme un pipeline de transformation de données. À un niveau superficiel, la structure topologique générale est similaire à un travail MapReduce , la principale différence étant que les données sont traitées en temps réel par opposition à des lots individuels. De plus, les topologies Storm s'exécutent indéfiniment jusqu'à ce qu'elles soient supprimées, tandis qu'un DAG de travail MapReduce doit finir[7].

Storm est devenu un projet de niveau supérieur Apache en [8] et était auparavant en incubation depuis [9],[10].

Plateformes homologues[modifier | modifier le code]

Storm n'est que l'un des dizaines de moteurs de traitement de flux. Pour une liste plus complète, voir Traitement de flux. Twitter a annoncé Heron le [11] API compatible avec Storm. Il existe d'autres moteurs de données en continu comparables, tels que Spark Streaming et Flink[12].

Voir également[modifier | modifier le code]

Références[modifier | modifier le code]

  1. « https://projects.apache.org/json/projects/storm.json » (consulté le )
  2. « Apache Storm 2.3.0 Released », (consulté le )
  3. Marz, « About Nathan Marz », Nathan Marz (consulté le )
  4. « BackType Website (defunct) », BackType (consulté le )
  5. « A Storm is coming: more details and plans for release », Engineering Blog, Twitter Inc (consulté le )
  6. « Storm Codebase », Github (consulté le )
  7. « Tutorial - Components of a Storm cluster », Documentation, Apache Storm (consulté le )
  8. « Apache Storm Graduates to a Top-Level Project »
  9. « Storm Project Incubation Status », Apache Software Foundation (consulté le )
  10. « Storm Proposal », Apache Software Foundation (consulté le )
  11. « Flying faster with Twitter Heron », Engineering Blog, Twitter Inc (consulté le )
  12. « Benchmarking Streaming Computation Engines: Storm, Flink and Spark Streaming » [PDF], IEEE,