博客
关于我
Storm Topology组件
阅读量:663 次
发布时间:2019-03-15

本文共 1089 字,大约阅读时间需要 3 分钟。

Storm集群中的任务通常被称为Topology(拓扑结构)。与Hadoop中的MapReduce任务类似,Topology中的Spout组件负责从外部数据源获取数据,并按一定格式将数据传递给Bolt进行后续处理。

Topology的基础组成

在Storm中,一个最简单的Topology由一个Spout和一个Bolt组成。Spout从数据源中读取数据,将数据以特定格式(Tuple)传递给Bolt。Bolt则处理这组数据,完成后 Marty circulation(数据循环)的处理。每次Spout发送的数据单元称为Tuple,这些Tuple通过数据流连续传输,组成连续的Stream。

一个Topology中的组件(Components)目前仅包含Spout和Bolt。一个Topology中必须同时存在Spout和Bolt,Spout和Bolt的数量可根据实际需求自由调整。即使最简单的Topology,也必须包含一个Spout和一个Bolt。

Stream的基础

Stream是连续数据传输的通道,其最小数据单元是Tuple。每条Stream由连续的Tuple组成。Storm是一个实时数据处理框架,独特之处在于,其处理流是增量式的。与批处理框架(如Hadoop)不同,Storm能够实时处理不断到达的新数据。

###拓扑结构的演进随着拓扑结构的复杂化,涉及的Spout和Bolt数量都会增加。例如:

  • 多个Bolt处理单个Spout输出的数据:一个Spout可以将数据发送到多个Bolt,处理数据时可以从不同维度进行分析。
  • 多级处理流(Chain):一个Bolt可以将数据传递给多个下级Bolt,逐步进行深入分析和处理。
  • 多个Spout和多个Bolt组成的复杂拓扑:这种情况适用于需要同时处理多个数据源或进行多级分析任务的情况。
  • ###拓扑结构中的DAG(有向无环图)在Storm中,拓扑结构是由有向无环图(DAG)表示的。数据流的方向必须遵循拓扑结构中的方向,避免形成环路。例如,Spout负责从外部读取数据,Bolt则负责数据的处理。如果出现环路,则会造成数据无法完成处理,造成死循环。

    ###实际应用示例在实际应用中,拓扑结构可以根据具体需求进行设计。例如:

    • 实时权重计算:一个医疗APP需要实时显示医生的响应权重,这可能需要多个Spout分别处理问诊量和排队数,然后通过Bolt进行计算和输出结果。

    这种设计方式允许 Strom_TRAFFIC能够高效处理实时数据,满足应用的性能需求。

    如果你有其他问题或需要进一步了解Storm拓扑结构的内容,可以随时告诉我!

    转载地址:http://ytlmz.baihongyu.com/

    你可能感兴趣的文章
    PC端恶意代码分析Lab1.1-5.1,从零基础到精通,收藏这篇就够了!
    查看>>
    PC端编辑 但能在PC端模拟移动端预览的富文本编辑器
    查看>>
    PDB文件:每个开发人员都必须知道的
    查看>>
    springMVC学习(二)
    查看>>
    Pdfkit页眉和页脚
    查看>>
    PDF中的Pandoc语法突出显示不起作用
    查看>>
    pdf从结构新建书签_在PDF文件中怎样创建书签
    查看>>
    pdf做成翻页电子书_第一弹:常见BOOX电子书阅读器问题解答,这些技能你都会吗?...
    查看>>
    PDF文字识/编辑?这个工具真的很强大!
    查看>>
    pdf文档出现乱码如何修改
    查看>>
    pdf根据模板导出
    查看>>
    PDF调出本来存在的书签面板
    查看>>
    pdf转图片
    查看>>
    pdf转图片、提取pdf文本、提取pdf图片
    查看>>
    pdo sqlserver
    查看>>
    PDO中捕获SQL语句中的错误
    查看>>
    peek和pop的区别
    查看>>
    Pelemay 项目教程
    查看>>
    Penetration Testing、Security Testing、Automation Testing
    查看>>
    PentestGPT:一款由ChatGPT驱动的强大渗透测试工具
    查看>>