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的一些配置 |
网友评论