1、拓扑(Topology):

builder.setBolt(TRANSFORM_BOLT, new TransformationBolt(), 1).shuffleGrouping(MY_SPOUT);
builder.setBolt(PROCESS1_BOLT, new FirstProcessBolt(), 1).shuffleGrouping(TRANSFORM_BOLT, "StreamOne");
builder.setBolt(PROCESS2_BOLT, new SecondProcessBolt(), 1).shuffleGrouping(TRANSFORM_BOLT, "StreamTwo");
builder.setBolt(PROCESS3_BOLT, new ThirdProcessBolt(), 1).shuffleGrouping(TRANSFORM_BOLT, "StreamThree");

2、Bolt:

@Override
private void execute(Tuple input) {
// perform some logic
collector.emit("StreamOne", input, new Values(...));
collector.emit("StreamTwo", input, new Values(...));
collector.emit("StreamThree", input, new Values(...));
}
@Override
public void declareOutputFields(OutputFieldsDeclarer declarer) {
declarer.declareStream("StreamOne", new Fields(...));
declarer.declareStream("StreamTwo", new Fields(...));
declarer.declareStream("StreamThree", new Fields(...));
}

Storm 提交多个流例程的更多相关文章

  1. [QA翻译]如何在Storm里拆分stream流?

    原文:http://stackoverflow.com/questions/19807395/how-would-i-split-a-stream-in-apache-storm 问题:我现在不清楚如 ...

  2. Storm实时计算:流操作入门编程实践

    转自:http://shiyanjun.cn/archives/977.html Storm实时计算:流操作入门编程实践   Storm是一个分布式是实时计算系统,它设计了一种对流和计算的抽象,概念比 ...

  3. Storm提交Topology报错:Found multiple defaults.yaml resources.

    Storm提交Topology运行方式分为本地和集群运行两种,其中集群运行需要将程序打包并把jar包复制到集群,通过以下方式执行: bin/storm jar /opt/run/storm-demo- ...

  4. storm提交拓扑报错processing getcomponentpendingprofileactions

    storm提交新的拓扑,拓扑能提交成功,但是在UI界面查看时每个bolt报错Thrift.processing getComponentPendingProfileActions异常. 原因:stor ...

  5. 从Storm和Spark 学习流式实时分布式计算的设计

    0. 背景 最近我在做流式实时分布式计算系统的架构设计,而正好又要参加CSDN博文大赛的决赛.本来想就写Spark源码分析的文章吧.但是又想毕竟是决赛,要拿出一些自己的干货出来,仅仅是源码分析貌似分量 ...

  6. Storm入门(九)Storm常见模式之流聚合

    流聚合(stream join)是指将具有共同元组(tuple)字段的数据流(两个或者多个)聚合形成一个新的数据流的过程. 从定义上看,流聚合和SQL中表的聚合(table join)很像,但是二者有 ...

  7. Storm 提交任务过程详解 (不对地方麻烦指正)

    1.使用的是Storm中自带的一个测试jar包 提交下这任务到storm中去 storm jar /usr/local/app/storm/examples/storm-starter/storm-s ...

  8. 记一次storm提交任务遇到的坑

    摘要:主要是自己没有真正理解storm jar命令参数的意义. 情景复现: 在storm集群中使用命令提交后,在UI界面中,一直看不见任务提交上来的任务,但是在集群提交的shell界面中,是可以看到相 ...

  9. Storm系列(十)聚流示例

    功能:将多个数据源的数据汇集到一个处理单元进行集中分类处理: 入口类TestMain 1  ; i < size; i++) { 31              content += input ...

随机推荐

  1. 06 Activity OnNewIntent方法

    OnNewIntent方法:该方法体现在Activity的启动模式上 如sigleTop上: X这个Activity启动模式为sigleTop,Y这个Activity启动模式为stdanderd 那么 ...

  2. Redis简介以及数据类型存储

    由于我们在大型互联网项目当中,用户访问量比较大,比较多,会产生并发问题,对于此,我们该如何解决呢,Redis横空出世,首先,我们来简单的认识一下Redis,详细介绍如下所示: Redis是一个开源的, ...

  3. javascript 下拉列表 自动取值 无需value

    <select id="applyType" name="$!{status.expression}" class="inp" onc ...

  4. 04_NoSQL数据库之Redis数据库:set类型和zset类型

     sets类型及操作 Set是集合,它是string类型的无序集合.set是通过hash table实现的,添加,删除和查找复杂度都是0(1).对集合我们可以取并集.交集.差集.通过这些操作我们可 ...

  5. Dynamics CRM Microsoft SQL Server 指定的数据库具有更高的版本

    在做NLB部署时遇到这么个问题,CRMAPP1安装的CRM版本是6.1已经打了SP1补丁,而在CRMAPP2上的CRM安装包是6.0版本,在选择连接现有部署后,最后一步检测就出了问题,如下图所示. 看 ...

  6. 在 root 下执行 Oracle 程序时找不到 libclntsh.so.11.1 错误的解决办法。

    在 root 下执行 Oracle 程序时找不到 libclntsh.so.11.1 错误的解决办法. 先确定 libclntsh.so.11.1 所在目录: [oracle@localhost ~] ...

  7. Java线程的状态

    Java线程的状态 线程对象在不同的运行时期有不同的状态,状态信息就存在于Thread中的State枚举中,如下所示: public enum State { /** * 至今尚未启动的线程处于这种状 ...

  8. 【Unity Tips】备忘录(扫盲篇)

    写在前面 Unity3D虽然是个非常方便的游戏引擎,但还是有一些地方会产生一些让人莫名其妙的问题,而且debug半天也不知道到底哪里错了.往往在经过了大量的log之后,也许我们才顿悟,原来Unity内 ...

  9. EXCEPTION与ERROR的区别

    EXCEPTION与ERROR的区别

  10. go-mysql: database/sql 接口适配

    go-mysql已经支持golang database/sql接口,并通过https://github.com/bradfitz/go-sql-test测试用例. 现在go-mysql可以直接通过go ...