storm中几个概念的大小关系】的更多相关文章

从图可以看出来:topology>supervisor>worker>excutor>task; 也就是说一个topology可以运行在多个supervisor上,一个supervisor可以运行多个worker(进程),一个worker里面可以有多个excutor(线程),一个excutor可以运行多个task: 关于task的大小差不多可以理解为一个task实例一个bolt.task数默认是不设置的,默认和excutor数相同,也就是说一个excutor运行一个task,可以通…
本文导读: 1 Worker.Executor.task详解 2 配置拓扑的并发度 3 拓扑示例 4 动态配置拓扑并发度 Worker.Executor.Task详解: Storm在集群上运行一个Topology时,主要通过以下3个实体来完成Topology的执行工作:1. Worker Process(工作进程)——Spout/Bolt中运行具体处理逻辑的进程2. Executor(线程.执行器)——物理线程3. Task(任务)——具体的处理逻辑对象 下图简要描述了这3者之间的关系: sto…
1.topology 一个topolgy是spouts和bolts组成的图,通过stream groupings将图中的spout和bolts连接起来:如图所示: 一个topology会一直运行知道你手动kill掉,Storm自动重新分配执行失败的任务,并且Storm可以保证你不会有数据丢失(如果开启了高可靠性的话).如果一些机器意外停机它上面的所有任务会被转移到其他机器上: 运行一个toplogy很简单,首先,把你所有的代码以及所依赖的jar打进一个jar中.然后运行类似下面的命令: stor…
Storm是一个流计算框架,处理的数据是实时消息队列中的,所以需要我们写好一个topology逻辑放在那,接收进来的数据来处理,所以是通过移动数据平均分配到机器资源来获得高效率. Storm的优点是全内存计算,因为内存寻址速度是硬盘的百万倍以上,所以Storm的速度相比较Hadoop非常快(瓶颈是内存,cpu).其缺点就是不够灵活:必须要先写好topology结构来等数据进来分析. Storm 关注的是数据多次处理一次写入,而 Hadoop 关注的是数据一次写入,多次查询使用.Storm系统运行…
Storm在集群上运行一个Topology时,主要通过以下3个实体来完成Topology的执行工作:1. Worker(进程)2. Executor(线程)3. Task 下图简要描述了这3者之间的关系: 1个worker进程执行的是1个topology的子集(注:不会出现1个worker为多个topology服务).1个worker进程会启动1个或多个executor线程来执行1个topology的component(spout或bolt).因此,1个运行中的topology就是由集群中多台物…
1.Tuple,Value,Field Tuple官方解释: "A tuple is a named of values where each value can be any type." tuple是一个类似于列表的东西,存储的每个元素叫做field(字段),可以是任何类型. Storm使用tuple作为它的数据模型, 每个tuple是一堆值,每个值都有一个名字, 一个Tuple代表数据流中的一个基本处理单元, 例如:一条cookie日志,它可以包含多个Field, 每个Field…
这里做一些补充: worker是一个进程,由supervisor启动,并只负责处理一个topology,所以不会同时处理多个topology. executor是一个线程,由worker启动,是运行task的物理容器,其和task是1 -> N关系. component是对spout/bolt/acker的抽象. task也是对spout/bolt/acker的抽象,不过是计算了并行度之后.component和task是1 -> N 的关系. supervisor会定时从zookeeper获取…
功能点  判断某个IP地址是否合法 判断两个IP地址是否在同一个网段中 判断两个IP地址的大小关系 知识准备 IP协议 子网掩码 Java 正则表达式 基本原理 IP地址范围 0.0.0.0- 255.255.255.255,包括了mask地址. IP地址划分 A类地址:1.0.0.1-126.255.255.254 B类地址:128.0.0.1-191.255.255.254 C类地址:192.168.0.0-192.168.255.255 D类地址:224.0.0.1-239.255.255…
业务描述: 统计从kafka spout中读取的数据条数,以及写入redis的数据的条数,写入hdfs的数据条数,写入kafaka的数据条数.并且每过5秒将数据按照json文件的形式写入日志.其中保存为json数据的格式为:时间戳 + 进程名称 + 读kafka数据条数 + 写入redis数据条数 + 写入hbase条数 + 写入kafka条数.time_stamp + process_name + from_kafka + to_redis + to_hdfs + to_kafka 给出实现的…
Storm中涉及到了很多组件,例如nimbus,supervisor等等,在参考了这两篇文章之后,对这个有了更好的理解. Understanding the parallelism of a Storm topology https://github.com/nathanmarz/storm/wiki/Understanding-the-parallelism-of-a-Storm-topology http://www.cnblogs.com/yufengof/p/storm-worker-e…