1.Storm概述

实时计算可以实时获取数据进行运算,得到计算结果,在很多实时性要求比较高的场景下有大量的应用.例如:微博热门话题榜单、电商网站实时推荐、地图路况信息。

实时计算和离线计算有较大的不同,实时计算强调实时性,数据不断流入,实时运算后结果实时反馈,实时计算没有数据积累的过程,有开始没有结束,如果不人为停止会一直运行下去。

Storm是一个开源的分布式实时计算系统,可以简单、可靠的处理大量的数据流。

Storm支持水平扩展,具有高容错性,保证每个消息都会得到处理,而且处理速度很快(在一个小集群中,每个结点每秒可以处理数以百万计的消息)。

Storm的部署和运维都很便捷,而且更为重要的是可以使用多种编程语言来开发应用。

 

2.Storm核心组件

storm结构称为topology(拓扑),由stream(数据流),spout(喷嘴-数据流的生成者),bolt(阀门-数据流运算者)组成(参考图:Storm组成结构)。

Storm概述

 

a.Spout

Spout负责连接数据源,接收数据,转换为tuple向后发送,Spout只负责转化数据,不负责数据处理。Spout和业务是解耦的,一方面使Spout的逻辑简单清晰,另一方面因为没有耦合可以非常方便的实现Spout的复用。

b.Bolt

Bolt负责接收数据,执行运算,运算过后可以继续向后发送tuple,给其他零个或多个Bolt。

其中的运算包括 数据运算 数据的连接 数据写出等等功能

c.Topology

这样利用Spout和Bolt就可以组件起复杂的数据处理流网络,实现复杂的分布式实时运算。

这个由Spout和Bolt组成的复杂的数据流处理网络称之为一个topology。

  • Topology
  • Bolt
  • Spout
  • Storm核心组件
  • Storm概述

相关文章:

  • 2021-12-26
  • 2021-05-22
  • 2021-07-17
  • 2021-08-03
  • 2022-01-13
  • 2021-12-26
  • 2021-09-04
  • 2021-09-27
猜你喜欢
  • 2021-09-25
  • 2021-07-17
  • 2021-06-07
  • 2021-07-24
  • 2021-04-21
  • 2021-09-23
相关资源
相似解决方案