美文网首页
Storm 调研

Storm 调研

作者: 王龙江_3c83 | 来源:发表于2019-03-21 23:20 被阅读0次

1. WordCount

1.1 继承 BaseRichSpout

方法名 概述 参数
void open(Map conf, TopologyContext context,SpoutOutputCollector collector) 该方法将在所有任务开始前被执行,一般作数据的初始化操作。 conf为拓扑提交时配置的变量,context为拓扑执行的上下文环境,collector用于在组件间传递数据
void nextTuple() 方法在相同的循环中被周期性的调用,用于处理实际的业务逻辑。
void declareOutputFields(OutputFieldsDeclarer declarer) 声明该组件处理后流中有哪些字段。 declarer为声明类。
void ack(Object msgId) 当发送出的数据被正确执行后,会自动调用该方法。 msgId为被正确执行的元组id。
void fail(Object msgId) 当发送出的数据没有并正确执行(比如丢失了),会自动调用该方法。 msgId为被未正确执行的元组id。

1.2 继承 BaseRichSpout

方法名 概述 参数
prepare(Map conf, TopologyContext context,OutputCollector collector) 该方法将在所有任务开始前被执行,一般作数据的初始化操作。 conf为拓扑提交时配置的变量,context为拓扑执行的上下文环境,collector用于在组件间传递数据
execute(Tuple input) 方法在相同的循环中被周期性的调用,用于处理实际的业务逻辑。 input 为上一个组件传入的元组数据。
declareOutputFields(OutputFieldsDeclarer declarer) 声明该组件处理后流中有哪些字段。 declarer为声明类。
fail(Object msgId) 当发送出的数据没有并正确执行(比如丢失了),会自动调用该方法。 msgId为被未正确执行的元组id

1.3 Topology

方法名 概述
TopologyBuilder() 用于组建实际集群运行的topology。TopologyBuilder对象
Config() 用于建立包含topology配置的Config对象,该配置在运行时会被与集群的配置合并并且通过prepare方法发送到所有结点。Config对象
LocalCluster() 通过构造该对象,可在本地环境中模拟Storm的运行环境进行代码功能测试。 LocalCluster对象
StormSubmitter.submitTopologyWithProgressBar(name, conf, builder) 通过构造该对象,实现向集群提交topology的功能。name为topology的名称,conf为配置信息,builder为设计的topology

1.4 Grouping相关API

方法名 概述 参数
shuffleGrouping(String name) Shuffle 分组是最常用的分组方式。它使用一个参数(源组件),源组件会发射元组到一个随机选择的 bolt 并确保每个消费者会收到等数量的元组。 name为上游需要分组的组件名称
fieldsGrouping(String name, Fields fields) Fields分组允许你基于元组的一个或多个域来控制元组怎样被发送到 bolts。 它确保一个联合域中给定的值集合总是会被送到相同的bolt。 Name为上游需要分组的组件名称,fields为字段集合。
allGrouping(String name) All 分组发送每个元组的一份单独拷贝到接收 bolt 的所有实例上。这种分组被用来向 bolts发送信号。 name为上游需要分组的组件名称
directGrouping(String name) 这是一个由源决定哪个组件将接收元组的分组。 Name为上游需要分组的组件名称

1.5 DPRC 拓扑 API

方法名 概述 参数
LinearDRPCTopologyBuilder(String name) 构建的topology创建DRPCSpouts---它连接DRPC服务器并且发送数据到topology的剩余部分---topology还包装bolts,这使得结果可以从最后一个bolt返回。所有添加到LinearDRPCTopologyBuilder上的bolts被顺序执行。 name为对外暴漏的drpc标识

1.6 storm-kafka接口

方法名 概述 参数
kafkaSpout(SpoutConfig kafkaConfig) 使用KafkaConfig来配置一些与kafka自身相关的选项。 kafkaConfig为kafka的一些配置

参考资料

相关文章

  • Storm 调研

    1. WordCount 1.1 继承 BaseRichSpout 1.2 继承 BaseRichSpout 1....

  • Storm入门

    Storm 基本介绍 什么是 Storm 首先Storm是Apache顶级项目之一Storm 官网 Storm 是...

  • java大数据之storm

    一、Storm简介 1.1 Storm是什么 Apache Storm(http://storm.apache.o...

  • Apache Storm

    Apache Storm Apache Storm Use Cases Real Time Storm Proje...

  • Storm1.0.x新功能调研

    原文地址:http://woodding2008.iteye.com/blog/2326677简介storm1.0...

  • Storm 性能优化

    目录 场景假设 调优步骤和方法 Storm 的部分特性 Storm 并行度 Storm 消息机制 Storm UI...

  • Storm(三) storm-starter

    原文链接storm-starter storm-starter就是Storm工程里边一个专门用来学习使用Storm...

  • 流式处理框架storm浅析

    前言 前一段时间参与哨兵流式监控功能设计,调研了两个可以做流式计算的框架:storm和spark streamin...

  • storm 启动 uimbus ui supervisor卡死解

    storm uimbus执行以后,卡死,jps中有nimbus,如下图 storm ui 、storm super...

  • Storm集群搭建

    Storm集群搭建 1、下载StormApache官方下载Storm链接为:http://storm.apache...

网友评论

      本文标题:Storm 调研

      本文链接:https://www.haomeiwen.com/subject/tbwfvqtx.html