千家信息网

大数据处理之流式计算简介

发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,简介Strom是一个开源的分布式流式计算系统,用来处理流式的数据,被称作为流式的hadoop,在电信行业,可以用来做大流量预警、终端营销、访问竞争对手产品从而做挽留等业务。本文将从storm在hado
千家信息网最后更新 2025年12月02日大数据处理之流式计算简介
  1. 简介

    Strom是一个开源的分布式流式计算系统,用来处理流式的数据,被称作为流式的hadoop,在电信行业,可以用来做大流量预警、终端营销、访问竞争对手产品从而做挽留等业务。本文将从storm在hadoop生态圈中所处位置、storm中术语、storm平台搭建、storm应用程序构建等详细介绍storm。

  2. Strom在大数据生态圈中的位置


  1. 上图可以看出,Storm处于HDFS之上,但是并不是说Storm只能是处理HDFS中数据,反而Storm的数据来源一般是Log日志或者是Kafka中数据,当数据通过Strom处理完成之后,其流向可以是HDFS、HBase、关系型数据库等。

  2. Strom是一个计算系统,在大数据处理中,我们耳熟能详的计算系统是mapreduce,这张架构图看出storm和mapreduce是同级关系,而storm被称作是流式的hadoop。所以接下来将通过与mapreduce进行对比来介绍storm

3.Strom常用术语介绍

StromMapReduce(基于hadoop2.X)描述
NimbusApplicationMasterMapReduce中Resourcemanager负责任务分配、资源申请,同样的在Strom中Nimbus负责代码的分发,任务的分配和调度工作
SupervisorNodeManagerMapReducer中NodeManager负责资源的申请,工作进程启动和监控,Strom中Supervisor同样负责任务进程的启动和停止
Worker
YarnChild真正负责任务处理的进程
TopologyMapReduce驱动程序






4.
  • Strom架构Topology:通过Storm构建的应用程序描述了数据的来源、数据的处理逻辑和数据的流向。

  • Spout:Topology中的组件,通过Spout描述了数据的来源,Spout中有一个nextTuple()函数,该函数会不停的被调用,源数据的生成就在该函数中实现,然后数据流向下一节点,每个Topology中只允许有一个Spout。

  • Bolt:Topology中的组件,该组件接收上一节点(Spout或Bolt)发射过来的数据,该组件中有一个execute(Tuple tuple)方法,当接收到数据后该函数会被动执行,进行合并、筛选、持久化等操作。Bolt可以是Topology中一次完整的数据处理流程的终点,或者是转移点。

  • Tuple:Tuple是Storm中传递消息的基本单元,Tuple的数据结构为一个List。

  • Stream:连续不断的Tuple就组成了Stream。

  • Stream grouping:描述了数据在不同的组件(Spout/Bolt)之间流转时,partition的规则,类型如下:

1.shuffle Grouping:随机分组,随机派发stream里面的tuple,保证每个bolt接收到的tuple数目相同2.Fields Grouping:按照字段分组,相同的字段会分配到相同的bolt,不同的字段分配到不同的Bolt3.ALL Grouping:广播,对每一个tuple,所有的bolt都会收到4.Global Grouping:全局分组,这个tuple被分配到storm的一个bolt的一个task内,即id最低的那个5.Non Grouping:不分组,目前效果和Global Groouping一样6.Direct Grouping:直接分组,指定消息的接收者。






数据 处理 组件 分组 分配 任务 函数 不同 相同 字段 来源 程序 系统 进程 数据处理 位置 应用程序 术语 架构 消息 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 魔兽世界怀旧服推荐pve服务器 使在数据库中的显示标题为 湖南扬途网络技术有限公司干嘛的 阿里云服务器解绑 魔兽正式服萨菲隆服务器 网络安全审查办法有什么意义 软件开发的各阶段任务 气象局网络安全应急演练 服务器如何安装管理软件 viotica数据库 校园网络安全知识竞赛答案 澳门数据库安全 服务器软件防护 嘉定区品牌网络技术服务质量保障 相同条件引用一次数据库 软件开发系统架构工具 几个网站共享数据库是站群吗 环艺和软件开发的前景 数据库餐厅房间点餐系统 炫拓网络技术部福建 网络安全实验报告怎么写 角色复制后是否选择服务器 青岛一念间网络技术部 软件技术基础教材数据库部分 对计算机网络技术评论不正确的是 vivo光遇服务器繁忙什么意思 郑州万豪网络技术有限公司游戏 法律软件开发总经理岗位职责 三级网络技术二级 云数据库怎么解决扩展性问题
0