Storm物理结构架构图
Nimbus主节点:
主节点通常运行一个后台程序--Nimbus,用于响应分布在集群中的节点,分配任务和监测故障。这个很类似了Hadoop中的Job Tracker。
Supervisor工作节点:
工作节点同样会运行一个后台程序--Supervisor,用于收听工作指派的任务要求运行工作进程。每个工作节点都是topology中一个子集的实现。而Nimbus和Supervisor之间的协调则通过Zookeeper系统协调集群。
Zookeeper
Zookeeper是完成Supervisor和Nimbus之间协调的服务。而应用程序实现实时的逻辑则被封装到Stomm中的“topology”。topology则是一组由Spouts(数据源)和Bolts(数据操作)通过Stream Groupings迪行连接的图。下面对出现的术语进行更深刻的解析。
Topology(拓扑)
storm中运行的一个实时应用程序,因为各个组件间的消息流动形成逻辑上的一个拓扑结构。一个topology是spouts和bolts组成的图(有向的流程图),通过streamgroupings将图中的spouts和bolts连接起来,如下图