【Storm流式处理框架第一期】Storm简介

一、Storm概况

Storm是个实时的、分布式以及具备高容错的计算系统

Storm进程常驻内存

Storm数据不经过磁盘,在内存中处理

Twitter开源的分布式实时大数据处理框架,最早开源于github

2013年,Storm进入Apache社区进行孵化

20149月,晋级成为了Apache*项目

官网 http://storm.apache.org/

国内外各大网站使用,例如雅虎、阿里、百度

二、Storm架构

架构

Nimbus(主节点) + Supervisor(从节点) + Worker(工作进程)

编程模型

DAG (Topology)(有向无环图)+ Spout(数据源节点) + Bolt(中间节点以及终止节点)

三、Storm性能

高可靠性:异常处理、消息可靠性保障机制

可维护性:StormUI 图形化监控接口,如图所示【Storm流式处理框架第一期】Storm简介

Storm与MapReduce比较

Storm:进程、线程常驻内存运行,数据不进入磁盘,数据通过网络传递。适用于实时的数据流处理。

MapReduce:为TBPB级别数据设计的批处理计算框架。适用于大量的数据批处理。

【Storm流式处理框架第一期】Storm简介

Storm与SparkStreaming比较

Storm:纯流式处理,专门为流式处理设计,数据传输模式更为简单,很多地方也更为高效。并不是不能做批处理,它也可以来做微批处理,来提高吞吐。

Spark Streaming:微批处理,将RDD做的很小来用小的批处理来接近流式处理,基于内存和DAG可以把处理任务做的很快。

【Storm流式处理框架第一期】Storm简介