数学之路-分布式计算-storm(1),数学之路计算-storm


        一个storm集群和hadoop集群相似,然而,hadoop集群可运行mapreduce jobs,而在storm中,运行topologies(拓扑),mapreduce jobs(作业)和topologies是不同的:

一个关键的不同在于mapreduce job最终会完成,而topolopy将永远在处理消息(你可以人为终止它)。

      有2种storm集群的结点:主节点和工作结点。主结点运行一个守护者,称为“nimbus”(灵光),它与hadoop的JobTracker类似,Nimbus负责在集群中分发代码,将任务委派给机器,监控其失败。

      每个工作结点运行一个守护者,叫“supervisor”(监督者),监督者 监听安排在本机中的工作(work),在必要时,基于nimbus的委派启动和停止worker(工作)进程,每个工作进程执行一部分topolgy,一个运行中的topology由分布在多台计算机上的多个工作进程组成。

      

本博客所有内容是原创,如果转载请注明来源

http://blog.csdn.net/myhaspl/

storm的核心由以下部分组成:1、topology(拓扑) 一个topology是一个图的计算,用户在一个topolopy的每个节点包括处理逻辑,节点之间的 链接显示数据是如何在节点间传递,topology运行很简单。2、stream(流)stream是storm的核心抽象,一个stream是一个无限tuple序列,tuple可以包含整型、长整型等数值型以及布尔型和字节数组。可定义序列 化器在本机tuple中使用自定义的类型。3、spout(喷口)spout是topology流的来源,一般spout从外部来源读取tuple,提交到topology。4、Bolt(螺栓)topology的所有处理在Bolt中完成,Bolt可完成过滤、业务处理、连接运算、连接、访问数据库等业务,并可做简单流转换。5、stream grouping(流分组)流分组在Bolt的任务中定义流应如何分区。6、task(任务)每个spout或Bolt在集群中执行许多任务,每个任务对应于一个线程的执行,流分组定义了如何从一个任务集到另一个任务集,发送tuple。7、worker(工作进程)topology跨一个或多个worker节点的过程执行,每个worker节点的进程是一个物理的jvm和topology执行所任务的一个子集。

相关内容