storm体验
简介
Apache Storm is a free and open source distributed realtime computation system
实时计算系统
特点:
高度容错
无数据丢失
低延迟
可扩展
实时计算框架分类
批处理
Spark streaming
流式处理
Strom
Flink
Kafka stream
核心概念
Topology(拓扑)
Spout:对接数据源, 产生tuple
Bolt: 处理tuple的基本单元
Tuple:一次消息传递的基本单元
Worker: 物理机的一个进程, 里面跑一个Topology
Executor: worker里面的一个线程,
Task: 一个Executor里面运行一类task
组件
storm系统角色和应用组件基本理解:
和Hadoop一起理解,清晰点。
1)物理节点Nimubus,负责资源分配和任务调度;
2)物理节点Supervisor负责接受nimbus分配的任务,启动和停止属于自己管理的worker进程;
3)系统角色Worker运行具体处理组件逻辑的进程;
4)系统角色Task是worker中每一个spout/bolt的线程称为一个task,storm0.8之后的版本,task不再与物理线程对应,同一个spout/bolt的task可能会共享一个物理线程,该线程称为executor