
Storm组件与参数详解:并行度、Nimbus与Supervisor角色
下载需积分: 5 | 13KB |
更新于2024-08-05
| 142 浏览量 | 举报
收藏
"strom学习笔记,涵盖了实时大数据处理框架Storm的主要组件关系、参数设置以及集群架构的解析。"
在深入探讨Storm之前,我们先要理解它是一个分布式实时计算系统,常用于实时大数据处理。本笔记将围绕Storm的核心概念展开,包括组件关系、参数配置以及集群架构。
1. **组件关系**:
Storm的组件主要包括Spout和Bolt。Spout是数据源,负责产生数据流;Bolt是对数据进行处理的组件,如清洗、聚合、过滤等操作。图例中的关系显示了数据流如何在不同组件之间传递。Spout发射数据到Bolt,Bolt处理后可能再传递给其他Bolt或返回给Spout,形成复杂的处理拓扑。
2. **主要参数设置**:
- `Parallelism_hint`: 并发度设置,决定了一个组件(Spout或Bolt)的执行器(Executor)数量。Executor是线程池,负责执行task。
- `setNumTasks`: 设置task的数量,task是实际运行的工作单元。
- `setNumWorkers`: 设置worker的数量,worker是JVM进程,每个worker运行在一个单独的进程中。
- 当task数量小于executor数量时,每个executor执行多个task;反之,当task数量大于executor数量时,每个executor只执行一个task。
- `setNumAcker`: 设置确认者(acker)的数量,用于确认消息是否正确处理。设置为0时,用户可以自定义确认策略。
3. **Storm集群架构**:
- **Nimbus**: 是Storm的主控节点,负责调度任务,将用户提交的Topology分解为任务分配给Supervisor。
- **Supervisor**: 从属节点,每个Supervisor管理一组工作进程(Worker),这些Worker运行Topologies的组件实例。
- **ZooKeeper**: 作为协调器,确保高可用性,监控Nimbus和Supervisor的状态,当Supervisor故障时,Nimbus能重新分配任务。
在实际应用中,调整这些参数可以优化系统的性能和资源利用率。例如,增加`Parallelism_hint`可以提高并行度,提升处理速度,但过多可能导致资源过度消耗。理解这些参数的交互和作用对于高效地利用Storm处理实时数据至关重要。
相关推荐





啥都会一点的混血猿
- 粉丝: 0
最新资源
- MyEclipse插件SVN Site 1.6.17解析与应用
- CMD命令速查手册:全面解析常用指令
- 团购趋势全面解析——团购论文选题指南
- 掌握Spring框架必备的Jar包清单
- C语言版数据结构课件精要
- PSPICE库文件丰富资源分享,助力电子设计高效应用
- 华中科技大学发布Creator可视化仿真建模技术教程
- Java+MySQL实现的购物车系统大作业项目解析
- Struts 2开发必备:核心jar包清单详解
- SQL Server JDBC驱动包详细解析
- VC++开发的多彩个性化时钟小程序
- 极品无损抓轨软件EAC v0.99汉化版发布
- 掌握PB开发:windowsAPI调用查询器与实例
- 电子设计自动化EDA实用教程深入解析
- Tomcat源码深度解析与Java Web开发实践
- VB编程资料与源码集合(CHM格式)
- 八通道数字电压表程序仿真技术及Protues报告分析
- 贪吃蛇游戏Android源码:初学者必看的震撼教程
- 收藏必备!2000个水晶按钮图标大集合
- DXF到DAT文件格式转换源码指南
- 挖掘机7.1版本发布:提升效率的利器
- Lucene 3.0 API官方英文版CHM文件介绍
- 深入解析JQuery表单验证技巧与应用
- 学校公共场所音乐定时播放设备介绍