千家信息网

Storm基本知识总结

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,Storm是一个开源的分布式实时计算系统,可以简单、可靠的处理大量的数据流。Storm的部署和运维都很便捷,而且更为重要的是可以使用任意编程语言来开发应用。storm:实时计算系统低延迟,高性能,分布
千家信息网最后更新 2025年02月03日Storm基本知识总结

Storm是一个开源的分布式实时计算系统,可以简单、可靠的处理大量的数据流。Storm的部署和运维都很便捷,而且更为重要的是可以使用任意编程语言来开发应用

storm:实时计算系统

低延迟,高性能,分布式,可扩展,容错

特点:简单编程模型,热部署,各种编程语言,可扩展,容错,可靠消息处理,快速,本地模式

storm基本概念:

Nimbus:负责资源分配和任务调度

Supervisor:负责接受nimbus分配的任务,启动和停止属于自己管理的worker进程

Worker:运行具体处理组件逻辑的进程

Task:worker中每一个spout/bolt的线程称为一个task,在storm0.8后,task不在与物理线程对应,同一个spout/bolt的task可能会共享一个物理线程,该线程称为executor

Topology:storm中运行的一个实时的应用程序,因为各个组件间的消息流动形成逻辑上的一个拓扑结构

Spout:在一个topology中产生源数据的组件。通常情况下spout会从外部数据源中读取数据,然后转换为topology的内部的源数据。spout是一个主动的角色,其接口中有一个nextTuple()的函数。storm框架会不停的调用此函数,用户只要在其中生成源数据即可。

Bolt:在一个topology中接受数据然后执行处理的组件。Bolt可以执行过滤、函数操作、合并、写数据库等任何操作。Bolt是一个被动的角色,其接口中有个execute(Tupleinput)函数,在接受到消息后会调用此函数,用户可以在其中执行自己想要的操作。

Tuple:一次消息传递的基本单元。本来应该是一个key-value的map,但是由于各个组件间的传递的tuple的字段名称已经事先定义好,所以Tuple中只要按序填入各个value就行了,是一个valueList。

Stream:源源不断传递的Tuple就组成了stream.

Strom使用场景:

1.流聚合:把两个或者多个数据流聚合成一个数据流-基于一些共同的tuple字段。

2.批处理:为了性能或者一些别的原因,把一组tuple一起处理,而不是一个一个的单独处理。

3.BasicBolt

a.读一个输入的tuple

b.根据一个输入tuple发射一个或多个tuple

c.在execute的方法的最后ack那个输入tuple遵循这类模式的bolt一般是函数或者是过滤器,这种模式太常见,storm为这类模式单独封装了一个接口:IbasicBolt

d.内存内缓存+Fields grouping组合

e.据算topN

f.用TimeCacheMap来高效的保存一个最近被更新对象的缓存

g.分布式RPC

storm分组机制

1.随机分组(Shuffle grouping)

2.字段分组(Fields grouping)

3.全部分组(All grouping)

4.全局分组(Global grouping)

5.无分组(None grouping)

6.直接分组(Direct grouping)

7.实现CustomStreamGrouping接口来定义自己的分组


数据 分组 函数 处理 组件 接口 模式 消息 线程 分布式 字段 实时 数据流 编程 输入 任务 多个 物理 用户 系统 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 路由器虚拟服务器咋样设置 苏州网络技术支持价格 北京大型软件开发推广 光纤传输与网络技术心得体会 数据库有数据却看不见 河津市网络安全周启动仪式 千锋网络安全视频怎么样 宁夏科技互联网公司招聘 网络安全 tafang 网络技术可以考取的证书 山东省联想服务器代理怎么收费 宿城区大型网络技术价格查询 网络技术员工作中的难题 rust服务器管理指令 融媒体如何宣传网络安全教育信息 光标离开事件后存入数据库 域名点进去显示无法连接服务器 煤化工网络安全现状 宝安区口碑好的网络技术联系方式 山东农商网络安全培训课后测试 csgo选择服务器后还能改么 数据库制作课程设计软件 随机传送石数据库 南京软件开发服务平台 河北职业软件开发销售价格 卓著互联网科技 上海共享智能锁软件开发 北京锐智天地网络技术 图象识别软件开发要求 光网络技术与发展
0