Apache Storm


Apache Storm is a distributed stream processing computation framework written predominantly in the Clojure programming language. Originally created by Nathan Marz and team at BackType, the project was open sourced after being acquired by Twitter. It uses custom created "spouts" and "bolts" to define information sources and manipulations to allow batch, distributed processing of streaming data. The initial release was on 17 September 2011.
A Storm application is designed as a "topology" in the shape of a directed acyclic graph with spouts and bolts acting as the graph vertices. Edges on the graph are named streams and direct data from one node to another. Together, the topology acts as a data transformation pipeline. At a superficial level the general topology structure is similar to a MapReduce job, with the main difference being that data is processed in real time as opposed to in individual batches. Additionally, Storm topologies run indefinitely until killed, while a MapReduce job DAG must eventually end.
Storm became an Apache Top-Level Project in September 2014 and was previously in incubation since September 2013.

Development

Apache Storm is developed under the Apache License, making it available to most companies to use. Git is used for version control and Atlassian JIRA for issue tracking, under the Apache Incubator program.
VersionRelease Date
2.1.06 September 2019
1.2.318 July 2019
2.0.030 May 2019
1.1.48 January 2019
1.2.24 June 2018
1.1.34 June 2018
1.0.73 May 2018
1.2.119 February 2018
1.2.015 February 2018
1.1.215 February 2018
1.0.614 February 2018
1.0.515 September 2017
1.1.11 August 2017
1.0.428 July 2017
1.1.029 Mar 2017
1.0.314 February 2017
0.10.214 September 2016
0.9.77 September 2016
1.0.210 August 2016
1.0.16 May 2016
0.10.15 May 2016
1.0.012 April 2016
0.10.05 November 2015
0.9.65 November 2015
0.9.54 June 2015
0.9.425 March 2015
0.9.325 November 2014
0.9.225 June 2014
0.9.110 February 2014
Historical VersionRelease Date
0.9.08 December 2013
0.8.211 January 2013
0.8.16 September 2012
0.8.02 August 2012
0.7.028 February 2012
0.6.015 December 2011
0.5.019 September 2011

Apache Storm Architecture

The Apache Storm cluster comprises following critical components:
Storm is but one of dozens of stream processing engines, for a more complete list see Stream processing. Twitter announced Heron on June 2, 2015 which is API compatible with Storm. There are other comparable streaming data engines such as Spark Streaming and Flink.