首先扣一张最经典的图片,也是官网的首页图片,就可以很好的解释。
1.spout
Storm中的spout组件就是图中画出的水龙头,它就是数据源,Storm处理数据要完成实时数据处理首先需要有数据源将数据输入,那么spout就是数据源的功能。
2.bolt
Storm中的bolt组件就是图中的小水滴,它是数据流处理组键,数据源spout将数据发送过来会交给bolt进行处理。可以从图中看出,一个spout发送出数据可以发送给好多个bolt并行处理,而一个bolt处理完之后可以给下一个bolt继续处理。
3.数据管道
Storm发送数据的管道也就是图中的一个一个指向性箭头,因为storm是流式处理框架,所以spout拿到数据将数据推送到bolt中处理就是经过一个一个的管道,管道中放的是最小的数据单位tuple,也就是元组。
4.Tuple
它是Stream中最小数据组成单元,spout获取到数据之后,只有将数据封装成tuple才可以填充到数据管道中,才可以流向bolt进行处理。
5.拓扑
当Storm完成了上面的这一个流程,就是spout数据源发送数据,经过数据管道传送给bolt,bolt进行处理,完成一个需求之后,这个就叫做一个拓扑,也就是Topology,它是DAG有向无环图,也就是图中所示的。
6.Storm中的进程
7.Storm中的线程
8.Storm中的task
9.Storm中的stream Grouping – 数据流分组(即数据分发策略)