storm学习笔记1

离线计算代表技术
sqoop批量导入数据、HDFS批量存储数据、MapReduce批量计算数据、Hive批量计算数据…
流式计算代表技术
Flume实时获取数据、Kafka/metaq实时数据存储、Storm/JStorm实时数据计算、Redis实时结果缓存、持久化存储(mysql)
Storm核心组件
Nimbus:负责资源分配和任务调度;
Supervisor:负责接受nimbus分配的任务,启动和停止属于自己管理的worker进程;
Worker:运行具体处理组件逻辑的进程。Worker运行的任务类型只有两种,一种是Spout任务,一种是Bolt任务;
Task:worker中每一个spout/bolt的线程称为一个task. 在storm0.8之后,task不再与物理线程对应,不同spout/bolt的task可能会共享一个物理线程,该线程称为executor。在这里插入图片描述
Storm程序的并发机制
一个topology由多个worker(即JVM进程)协作完成,一个worker只能执行一个topology;一个worker可以包含一个或多个executor ,一个executor线程可以执行一个或多个tasks;tasks就是bolt/spout的实例。可以通过配置worker、executor、tasks的数目来配置并发度。
Storm通信机制
Worker间(即进程间)的通信经常需要通过网络跨节点进行,Storm使用ZeroMQ或Netty(0.9以后默认使用)作为进程间通信的消息框架;
Worker进程内部通信:不同worker的thread通信使用LMAX Disruptor来完成。
Worker进程间通信
worker进程间消息传递机制,消息的接收和处理的大概流程见下图
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值