package mypackage.topology; import backtype.storm.Config; import backtype.storm.LocalCluster; import backtype.storm.StormSubmitter; import backtype.storm.topology.TopologyBuilder; import mypackage.bolts.HashtagAndTweetBolt; import mypackage.bolts.SqlDb; import mypackage.bolts.report; import mypackage.spouts.TwitterSpoutSample; /** * Created by anshushukla on 24/04/15. */ public class TopologyWithSQLSample { public static void main (String[] args) throws Exception{ TopologyBuilder builder = new TopologyBuilder(); // builder.setSpout("spout", new TwitterSpout(), 1); builder.setSpout("spout",new TwitterSpoutSample(),50); builder.setBolt("unshortenBolt", new HashtagAndTweetBolt(), 2) .shuffleGrouping("spout"); // builder.setBolt("dbBolt", new CassandraBolt(), 2) // .shuffleGrouping("unshortenBolt"); builder.setBolt("dbbolt",new SqlDb(),2) .shuffleGrouping("unshortenBolt"); builder.setBolt("report-bolt", new report(), 1).globalGrouping("dbbolt"); Config conf = new Config(); conf.setDebug(false); //submit it to the cluster, or submit it locally if(args!=null && args.length > 0) { conf.setNumWorkers(3); conf.setNumAckers(5); StormSubmitter.submitTopology(args[0], conf, builder.createTopology()); } else { conf.setMaxTaskParallelism(10); LocalCluster cluster = new LocalCluster(); cluster.submitTopology("unshortening", conf, builder.createTopology()); //Thread.sleep(10000); //cluster.shutdown(); } } }