Storm流分组源码分析

Topology

本文不是停留在字面上去总结Storm的流分组方式,而是列出Storm流分组实现的源码位置,看了源码,对各种流分组也就可以做到知其所以然了。
各种流分组一览,源码位置

org.apache.storm.topology.InputDeclarer<T extends InputDeclarer>

读读这个接口的源码,Storm支持的所有流分组方式瞬间收入囊中。
1.shuffle grouping源码位置

org.apache.storm.grouping.ShuffleGrouping

2.fields grouping源码位置

org.apache.storm.trident.partition.IndexHashGrouping

3.global grouping源码位置

org.apache.storm.trident.partition.GlobalGrouping

4.local or shuffle grouping源码位置

org.apache.storm.grouping.LoadAwareShuffleGrouping

5.none grouping源码位置

org.apache.storm.testing.NGrouping

6.all grouping
源码位置我没找到,不过看了其他流分组方式的源码,这种分组方式的实现也就豁然开朗了。
7.direct grouping源码位置

org.apache.storm.trident.partition.IdentityGrouping

8.partial key grouping源码位置

org.apache.storm.grouping.PartialKeyGrouping

9.custom grouping
自定义分组,实现接口

org.apache.storm.grouping.CustomStreamGrouping

看了其他流分组方式的源码,你会发现所有流分组的实现类都实现了CustomStreamGrouping接口,因此,实现自定义流分组的方法也就一目了然了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、Storm是什么 Storm是一个免费并开源的分布式实时计算系统。利用Storm可以很容易做到可靠地处理无限的...
    Graceleeman阅读 8,144评论 0 6
  • Storm入门系列之一:storm核心概念及特性 本文的将介绍一些 storm 入门的基础知识,包括 storm ...
    zhaif阅读 8,430评论 0 17
  • Storm 系统中包含以下几个基本概念:拓扑(Topologies)流(Streams)数据源(Spouts)数据...
    发光的鱼阅读 4,214评论 0 0
  • 为什么有些人看起来很瘦,体检时竟被医生告知有脂肪肝?如果只看体重,你可能并不觉得TA有多胖。但如果你让他测一下内脏...
    淡然简书阅读 936评论 0 0
  • 【1】 起风了 无数的祭奠与告别在空中飞舞 时间从来不语 却回答了所有问题 【2】 晚上睡觉听见叶子在后院窃窃私语...
    麦子和花阅读 2,118评论 0 0