storm trident function函数

来源:互联网 发布:网络程控电话交换机 编辑:程序博客网 时间:2024/05/01 20:48
package cn.crxy.trident;


import java.util.List;


import backtype.storm.Config;
import backtype.storm.LocalCluster;
import backtype.storm.generated.StormTopology;
import backtype.storm.tuple.Fields;
import backtype.storm.tuple.Values;
import storm.trident.TridentTopology;
import storm.trident.operation.BaseFunction;
import storm.trident.operation.TridentCollector;
import storm.trident.testing.FixedBatchSpout;
import storm.trident.tuple.TridentTuple;


public class TridentLocalPologyFunction {
public static class SumBolt extends BaseFunction{
@Override
public void execute(TridentTuple tuple, TridentCollector collector) {
//List<Object> values = tuple.getValues();
//System.err.println("values="+values.toString() );
Integer value0 = tuple.getInteger(0);
// Integer value1 = tuple.getInteger(1);
// Integer value2 = tuple.getInteger(2);
// Integer value3 = tuple.getInteger(3);
//Integer value2 = tuple.getInteger(1);
System.err.println("value0="+value0 );



}

}
public static void main(String[] args) {
//输出为new Fields("sentence")
FixedBatchSpout spout = new FixedBatchSpout(new Fields("sentence"), 1, new Values(9999));
spout.setCycle(true);
TridentTopology tridentTopology = new TridentTopology();
tridentTopology.newStream("spout1", spout).each(new Fields("sentence"), new SumBolt(), new Fields(""));
    LocalCluster localCluster = new LocalCluster();
    localCluster.submitTopology("trident", new Config(), tridentTopology.build());
}
}
0 0