From 756d0eb3152bb2d78fadd0f6feb32d24103dbfc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BD=97=E7=A5=A5?= <1366971433@qq.com> Date: Thu, 18 Apr 2019 16:51:38 +0800 Subject: [PATCH] =?UTF-8?q?strom=E9=9B=86=E6=88=90=E5=85=B6=E4=BB=96?= =?UTF-8?q?=E6=A1=86=E6=9E=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 + code/Storm/storm-hbase-integration/pom.xml | 88 +++++++++++----- .../com/heibaiying/WordCountToHBaseApp.java | 20 ++-- .../com/heibaiying/component/CountBolt.java | 47 +++++++++ .../com/heibaiying/component/SplitBolt.java | 1 - .../src/main/resources/assembly.xml | 25 ----- code/Storm/storm-hdfs-integration/pom.xml | 27 ++++- ...CountToHdfsApp.java => DataToHdfsApp.java} | 19 ++-- code/Storm/storm-kafka-integration/pom.xml | 94 ++++++++++++++++++ .../heibaiying/kafka/read/LogConsoleBolt.java | 40 ++++++++ .../kafka/read/ReadingFromKafkaApp.java | 61 ++++++++++++ .../kafka/write/DataSourceSpout.java | 52 ++++++++++ .../kafka/write/WritingToKafkaApp.java | 67 +++++++++++++ code/Storm/storm-redis-integration/pom.xml | 52 ++++++++-- .../com/heibaiying/WordCountToRedisApp.java | 4 - .../src/main/resources/assembly.xml | 25 ----- pictures/storm-hbase-result.png | Bin 0 -> 32984 bytes pictures/storm-hdfs-result.png | Bin 0 -> 38477 bytes pictures/storm-jar-complie-error.png | Bin 0 -> 48468 bytes pictures/storm-kafka-producer.png | Bin 0 -> 4896 bytes pictures/storm-kafka-receiver.png | Bin 0 -> 53305 bytes pictures/strom-kafka-consumer.png | Bin 0 -> 27873 bytes 22 files changed, 516 insertions(+), 110 deletions(-) create mode 100644 code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/component/CountBolt.java delete mode 100644 code/Storm/storm-hbase-integration/src/main/resources/assembly.xml rename code/Storm/storm-hdfs-integration/src/main/java/com.heibaiying/{WordCountToHdfsApp.java => DataToHdfsApp.java} (83%) create mode 100644 code/Storm/storm-kafka-integration/pom.xml create mode 100644 code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/read/LogConsoleBolt.java create mode 100644 code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/read/ReadingFromKafkaApp.java create mode 100644 code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/write/DataSourceSpout.java create mode 100644 code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/write/WritingToKafkaApp.java delete mode 100644 code/Storm/storm-redis-integration/src/main/resources/assembly.xml create mode 100644 pictures/storm-hbase-result.png create mode 100644 pictures/storm-hdfs-result.png create mode 100644 pictures/storm-jar-complie-error.png create mode 100644 pictures/storm-kafka-producer.png create mode 100644 pictures/storm-kafka-receiver.png create mode 100644 pictures/strom-kafka-consumer.png diff --git a/README.md b/README.md index a9aef49..fc14aca 100644 --- a/README.md +++ b/README.md @@ -77,6 +77,10 @@ TODO 2. [Storm核心概念详解](https://github.com/heibaiying/BigData-Notes/blob/master/notes/Storm核心概念详解.md) 3. [Storm单机版本环境搭建](https://github.com/heibaiying/BigData-Notes/blob/master/notes/installation/Storm%E5%8D%95%E6%9C%BA%E7%89%88%E6%9C%AC%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA.md) 4. [Storm编程模型详解](https://github.com/heibaiying/BigData-Notes/blob/master/notes/Storm编程模型详解.md) +5. Storm整合Redis +6. Storm整合HDFS/HBase +7. Storm整合Kafka +8. Storm Topology的两种打包方式 ## 六、Flume diff --git a/code/Storm/storm-hbase-integration/pom.xml b/code/Storm/storm-hbase-integration/pom.xml index c0446a9..8a5c725 100644 --- a/code/Storm/storm-hbase-integration/pom.xml +++ b/code/Storm/storm-hbase-integration/pom.xml @@ -9,36 +9,9 @@ 1.0 - UTF-8 1.2.2 - - - - org.apache.maven.plugins - maven-compiler-plugin - - 8 - 8 - - - - maven-assembly-plugin - - - src/main/resources/assembly.xml - - - - com.heibaiying.wordcount.ClusterWordCountApp - - - - - - - @@ -54,4 +27,65 @@ + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 8 + 8 + + + + + org.apache.maven.plugins + maven-shade-plugin + + true + + + *:* + + META-INF/*.SF + META-INF/*.sf + META-INF/*.DSA + META-INF/*.dsa + META-INF/*.RSA + META-INF/*.rsa + META-INF/*.EC + META-INF/*.ec + META-INF/MSFTSIG.SF + META-INF/MSFTSIG.RSA + + + + + + org.apache.storm:storm-core + + + + + + package + + shade + + + + + + + + + + + + + + \ No newline at end of file diff --git a/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/WordCountToHBaseApp.java b/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/WordCountToHBaseApp.java index 3844b63..57c4aa9 100644 --- a/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/WordCountToHBaseApp.java +++ b/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/WordCountToHBaseApp.java @@ -1,5 +1,6 @@ package com.heibaiying; +import com.heibaiying.component.CountBolt; import com.heibaiying.component.DataSourceSpout; import com.heibaiying.component.SplitBolt; import org.apache.storm.Config; @@ -18,9 +19,6 @@ import java.util.Map; /** * 进行词频统计 并将统计结果存储到HBase中 - *

- * 编译打包: mvn clean assembly:assembly -Dmaven.test.skip=true - * hdfs://hadoop001:8020/hbase */ public class WordCountToHBaseApp { @@ -45,11 +43,13 @@ public class WordCountToHBaseApp { // 定义流数据与HBase中数据的映射 SimpleHBaseMapper mapper = new SimpleHBaseMapper() .withRowKeyField("word") - .withColumnFields(new Fields("word")) - .withCounterFields(new Fields("count")) - .withColumnFamily("cf"); + .withColumnFields(new Fields("word","count")) + .withColumnFamily("info"); - // 给HBaseBolt传入表名、数据映射关系、和HBase的配置信息 + /* + * 给HBaseBolt传入表名、数据映射关系、和HBase的配置信息 + * 表需要预先创建: create 'WordCount','info' + */ HBaseBolt hbase = new HBaseBolt("WordCount", mapper) .withConfigKey("hbase.conf"); @@ -58,12 +58,14 @@ public class WordCountToHBaseApp { builder.setSpout(DATA_SOURCE_SPOUT, new DataSourceSpout(),1); // split builder.setBolt(SPLIT_BOLT, new SplitBolt(), 1).shuffleGrouping(DATA_SOURCE_SPOUT); + // count + builder.setBolt(COUNT_BOLT, new CountBolt(),1).shuffleGrouping(SPLIT_BOLT); // save to HBase - builder.setBolt(HBASE_BOLT, hbase, 1).fieldsGrouping(SPLIT_BOLT, new Fields("word")); + builder.setBolt(HBASE_BOLT, hbase, 1).shuffleGrouping(COUNT_BOLT); // 如果外部传参cluster则代表线上环境启动,否则代表本地启动 - if (args.length > 1 && args[1].equals("cluster")) { + if (args.length > 0 && args[0].equals("cluster")) { try { StormSubmitter.submitTopology("ClusterWordCountToRedisApp", config, builder.createTopology()); } catch (AlreadyAliveException | InvalidTopologyException | AuthorizationException e) { diff --git a/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/component/CountBolt.java b/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/component/CountBolt.java new file mode 100644 index 0000000..29974df --- /dev/null +++ b/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/component/CountBolt.java @@ -0,0 +1,47 @@ +package com.heibaiying.component; + +import org.apache.storm.task.OutputCollector; +import org.apache.storm.task.TopologyContext; +import org.apache.storm.topology.OutputFieldsDeclarer; +import org.apache.storm.topology.base.BaseRichBolt; +import org.apache.storm.tuple.Fields; +import org.apache.storm.tuple.Tuple; +import org.apache.storm.tuple.Values; + +import java.util.HashMap; +import java.util.Map; + +/** + * 进行词频统计 + */ +public class CountBolt extends BaseRichBolt { + + private Map counts = new HashMap<>(); + + private OutputCollector collector; + + + @Override + public void prepare(Map stormConf, TopologyContext context, OutputCollector collector) { + this.collector=collector; + } + + @Override + public void execute(Tuple input) { + String word = input.getStringByField("word"); + Integer count = counts.get(word); + if (count == null) { + count = 0; + } + count++; + counts.put(word, count); + // 输出 + collector.emit(new Values(word, String.valueOf(count))); + + } + + @Override + public void declareOutputFields(OutputFieldsDeclarer declarer) { + declarer.declare(new Fields("word", "count")); + } +} diff --git a/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/component/SplitBolt.java b/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/component/SplitBolt.java index b315f11..06bc1d8 100644 --- a/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/component/SplitBolt.java +++ b/code/Storm/storm-hbase-integration/src/main/java/com/heibaiying/component/SplitBolt.java @@ -6,7 +6,6 @@ import org.apache.storm.topology.OutputFieldsDeclarer; import org.apache.storm.topology.base.BaseRichBolt; import org.apache.storm.tuple.Fields; import org.apache.storm.tuple.Tuple; -import org.apache.storm.tuple.Values; import java.util.Map; diff --git a/code/Storm/storm-hbase-integration/src/main/resources/assembly.xml b/code/Storm/storm-hbase-integration/src/main/resources/assembly.xml deleted file mode 100644 index dec0017..0000000 --- a/code/Storm/storm-hbase-integration/src/main/resources/assembly.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - with-dependencies - - - - jar - - - false - - - / - true - true - runtime - - - org.apache.storm:storm-core - - - - \ No newline at end of file diff --git a/code/Storm/storm-hdfs-integration/pom.xml b/code/Storm/storm-hdfs-integration/pom.xml index 5d1ad12..f65e03c 100644 --- a/code/Storm/storm-hdfs-integration/pom.xml +++ b/code/Storm/storm-hdfs-integration/pom.xml @@ -43,10 +43,24 @@ *:* - org.apache.storm:storm-core + META-INF/*.SF + META-INF/*.sf + META-INF/*.DSA + META-INF/*.dsa + META-INF/*.RSA + META-INF/*.rsa + META-INF/*.EC + META-INF/*.ec + META-INF/MSFTSIG.SF + META-INF/MSFTSIG.RSA + + + org.apache.storm:storm-core + + @@ -82,6 +96,17 @@ storm-hdfs ${storm.version} + + org.apache.hadoop + hadoop-common + 2.6.0-cdh5.15.2 + + + org.slf4j + slf4j-log4j12 + + + org.apache.hadoop hadoop-client diff --git a/code/Storm/storm-hdfs-integration/src/main/java/com.heibaiying/WordCountToHdfsApp.java b/code/Storm/storm-hdfs-integration/src/main/java/com.heibaiying/DataToHdfsApp.java similarity index 83% rename from code/Storm/storm-hdfs-integration/src/main/java/com.heibaiying/WordCountToHdfsApp.java rename to code/Storm/storm-hdfs-integration/src/main/java/com.heibaiying/DataToHdfsApp.java index ff9d139..cb37014 100644 --- a/code/Storm/storm-hdfs-integration/src/main/java/com.heibaiying/WordCountToHdfsApp.java +++ b/code/Storm/storm-hdfs-integration/src/main/java/com.heibaiying/DataToHdfsApp.java @@ -20,18 +20,19 @@ import org.apache.storm.hdfs.bolt.sync.SyncPolicy; import org.apache.storm.topology.TopologyBuilder; /** - * 进行词频统计 并将统计结果存储到HDFS中 - *

- * hdfs://hadoopp001:8020 path + * 将样本数据存储到HDFS中 */ -public class WordCountToHdfsApp { +public class DataToHdfsApp { private static final String DATA_SOURCE_SPOUT = "dataSourceSpout"; private static final String HDFS_BOLT = "hdfsBolt"; public static void main(String[] args) { - // 定义存储文本的分隔符 + // 指定Hadoop的用户名 如果不指定,则在HDFS创建目录时候有可能抛出无权限的异常(RemoteException: Permission denied) + System.setProperty("HADOOP_USER_NAME", "root"); + + // 定义输出字段(Field)之间的分隔符 RecordFormat format = new DelimitedRecordFormat() .withFieldDelimiter("|"); @@ -41,7 +42,7 @@ public class WordCountToHdfsApp { // 文件策略: 每个文件大小上限1M,超过限定时,创建新文件并继续写入 FileRotationPolicy rotationPolicy = new FileSizeRotationPolicy(1.0f, Units.MB); - // 定义完整路径 + // 定义存储路径 FileNameFormat fileNameFormat = new DefaultFileNameFormat() .withPath("/storm-hdfs/"); @@ -57,20 +58,20 @@ public class WordCountToHdfsApp { // 构建Topology TopologyBuilder builder = new TopologyBuilder(); builder.setSpout(DATA_SOURCE_SPOUT, new DataSourceSpout()); - // save to HBase + // save to HDFS builder.setBolt(HDFS_BOLT, hdfsBolt, 1).shuffleGrouping(DATA_SOURCE_SPOUT); // 如果外部传参cluster则代表线上环境启动,否则代表本地启动 if (args.length > 0 && args[0].equals("cluster")) { try { - StormSubmitter.submitTopology("ClusterWordCountToHdfsApp", new Config(), builder.createTopology()); + StormSubmitter.submitTopology("ClusterDataToHdfsApp", new Config(), builder.createTopology()); } catch (AlreadyAliveException | InvalidTopologyException | AuthorizationException e) { e.printStackTrace(); } } else { LocalCluster cluster = new LocalCluster(); - cluster.submitTopology("LocalWordCountToHdfsApp", + cluster.submitTopology("LocalDataToHdfsApp", new Config(), builder.createTopology()); } } diff --git a/code/Storm/storm-kafka-integration/pom.xml b/code/Storm/storm-kafka-integration/pom.xml new file mode 100644 index 0000000..f1ffe16 --- /dev/null +++ b/code/Storm/storm-kafka-integration/pom.xml @@ -0,0 +1,94 @@ + + + 4.0.0 + + com.heibaiying + storm-kafka-integration + 1.0 + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 8 + 8 + + + + + org.apache.maven.plugins + maven-shade-plugin + + true + + + *:* + + META-INF/*.SF + META-INF/*.sf + META-INF/*.DSA + META-INF/*.dsa + META-INF/*.RSA + META-INF/*.rsa + META-INF/*.EC + META-INF/*.ec + META-INF/MSFTSIG.SF + META-INF/MSFTSIG.RSA + + + + + + org.apache.storm:storm-core + + + + + + package + + shade + + + + + + + + + + + + + + + + 1.2.2 + 2.2.0 + + + + + org.apache.storm + storm-core + ${storm.version} + + + org.apache.storm + storm-kafka-client + ${storm.version} + + + org.apache.kafka + kafka-clients + ${kafka.version} + + + + \ No newline at end of file diff --git a/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/read/LogConsoleBolt.java b/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/read/LogConsoleBolt.java new file mode 100644 index 0000000..16b65f2 --- /dev/null +++ b/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/read/LogConsoleBolt.java @@ -0,0 +1,40 @@ +package com.heibaiying.kafka.read; + +import org.apache.storm.task.OutputCollector; +import org.apache.storm.task.TopologyContext; +import org.apache.storm.topology.OutputFieldsDeclarer; +import org.apache.storm.topology.base.BaseRichBolt; +import org.apache.storm.tuple.Tuple; + +import java.util.Map; + +/** + * 打印从Kafka中获取的数据 + */ +public class LogConsoleBolt extends BaseRichBolt { + + + private OutputCollector collector; + + public void prepare(Map stormConf, TopologyContext context, OutputCollector collector) { + this.collector=collector; + } + + public void execute(Tuple input) { + try { + String value = input.getStringByField("value"); + System.out.println("received from kafka : "+ value); + // 必须ack,否则会重复消费kafka中的消息 + collector.ack(input); + }catch (Exception e){ + e.printStackTrace(); + collector.fail(input); + } + + + } + + public void declareOutputFields(OutputFieldsDeclarer declarer) { + + } +} diff --git a/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/read/ReadingFromKafkaApp.java b/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/read/ReadingFromKafkaApp.java new file mode 100644 index 0000000..fdddd44 --- /dev/null +++ b/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/read/ReadingFromKafkaApp.java @@ -0,0 +1,61 @@ +package com.heibaiying.kafka.read; + +import org.apache.kafka.clients.consumer.ConsumerConfig; +import org.apache.storm.Config; +import org.apache.storm.LocalCluster; +import org.apache.storm.StormSubmitter; +import org.apache.storm.generated.AlreadyAliveException; +import org.apache.storm.generated.AuthorizationException; +import org.apache.storm.generated.InvalidTopologyException; +import org.apache.storm.kafka.spout.KafkaSpout; +import org.apache.storm.kafka.spout.KafkaSpoutConfig; +import org.apache.storm.kafka.spout.KafkaSpoutRetryExponentialBackoff; +import org.apache.storm.kafka.spout.KafkaSpoutRetryExponentialBackoff.TimeInterval; +import org.apache.storm.kafka.spout.KafkaSpoutRetryService; +import org.apache.storm.topology.TopologyBuilder; + +/** + * 从Kafka中读取数据 + */ +public class ReadingFromKafkaApp { + + private static final String BOOTSTRAP_SERVERS = "hadoop001:9092"; + private static final String TOPIC_NAME = "storm-topic"; + + public static void main(String[] args) { + + final TopologyBuilder builder = new TopologyBuilder(); + builder.setSpout("kafka_spout", new KafkaSpout<>(getKafkaSpoutConfig(BOOTSTRAP_SERVERS, TOPIC_NAME)), 1); + builder.setBolt("bolt", new LogConsoleBolt()).shuffleGrouping("kafka_spout"); + + // 如果外部传参cluster则代表线上环境启动,否则代表本地启动 + if (args.length > 0 && args[0].equals("cluster")) { + try { + StormSubmitter.submitTopology("ClusterReadingFromKafkaApp", new Config(), builder.createTopology()); + } catch (AlreadyAliveException | InvalidTopologyException | AuthorizationException e) { + e.printStackTrace(); + } + } else { + LocalCluster cluster = new LocalCluster(); + cluster.submitTopology("LocalReadingFromKafkaApp", + new Config(), builder.createTopology()); + } + } + + private static KafkaSpoutConfig getKafkaSpoutConfig(String bootstrapServers, String topic) { + return KafkaSpoutConfig.builder(bootstrapServers, topic) + // 除了分组ID,以下配置都是可选的。分组ID必须指定,否则会抛出InvalidGroupIdException异常 + .setProp(ConsumerConfig.GROUP_ID_CONFIG, "kafkaSpoutTestGroup") + // 定义重试策略 + .setRetry(getRetryService()) + // 定时提交偏移量的时间间隔,默认是15s + .setOffsetCommitPeriodMs(10_000) + .build(); + } + + // 定义重试策略 + private static KafkaSpoutRetryService getRetryService() { + return new KafkaSpoutRetryExponentialBackoff(TimeInterval.microSeconds(500), + TimeInterval.milliSeconds(2), Integer.MAX_VALUE, TimeInterval.seconds(10)); + } +} diff --git a/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/write/DataSourceSpout.java b/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/write/DataSourceSpout.java new file mode 100644 index 0000000..2769046 --- /dev/null +++ b/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/write/DataSourceSpout.java @@ -0,0 +1,52 @@ +package com.heibaiying.kafka.write; + +import org.apache.storm.shade.org.apache.commons.lang.StringUtils; +import org.apache.storm.spout.SpoutOutputCollector; +import org.apache.storm.task.TopologyContext; +import org.apache.storm.topology.OutputFieldsDeclarer; +import org.apache.storm.topology.base.BaseRichSpout; +import org.apache.storm.tuple.Fields; +import org.apache.storm.tuple.Values; +import org.apache.storm.utils.Utils; + +import java.util.*; + +/** + * 产生词频样本的数据源 + */ +public class DataSourceSpout extends BaseRichSpout { + + private List list = Arrays.asList("Spark", "Hadoop", "HBase", "Storm", "Flink", "Hive"); + + private SpoutOutputCollector spoutOutputCollector; + + @Override + public void open(Map map, TopologyContext topologyContext, SpoutOutputCollector spoutOutputCollector) { + this.spoutOutputCollector = spoutOutputCollector; + } + + @Override + public void nextTuple() { + // 模拟产生数据 + String lineData = productData(); + spoutOutputCollector.emit(new Values("key",lineData)); + Utils.sleep(1000); + } + + @Override + public void declareOutputFields(OutputFieldsDeclarer outputFieldsDeclarer) { + outputFieldsDeclarer.declare( new Fields("key", "message")); + } + + + /** + * 模拟数据 + */ + private String productData() { + Collections.shuffle(list); + Random random = new Random(); + int endIndex = random.nextInt(list.size()) % (list.size()) + 1; + return StringUtils.join(list.toArray(), "\t", 0, endIndex); + } + +} \ No newline at end of file diff --git a/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/write/WritingToKafkaApp.java b/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/write/WritingToKafkaApp.java new file mode 100644 index 0000000..281824b --- /dev/null +++ b/code/Storm/storm-kafka-integration/src/main/java/com/heibaiying/kafka/write/WritingToKafkaApp.java @@ -0,0 +1,67 @@ +package com.heibaiying.kafka.write; + +import org.apache.storm.Config; +import org.apache.storm.LocalCluster; +import org.apache.storm.StormSubmitter; +import org.apache.storm.generated.AlreadyAliveException; +import org.apache.storm.generated.AuthorizationException; +import org.apache.storm.generated.InvalidTopologyException; +import org.apache.storm.kafka.bolt.KafkaBolt; +import org.apache.storm.kafka.bolt.mapper.FieldNameBasedTupleToKafkaMapper; +import org.apache.storm.kafka.bolt.selector.DefaultTopicSelector; +import org.apache.storm.topology.TopologyBuilder; + +import java.util.Properties; + +/** + * 写入数据到Kafka的特定主题中 + */ +public class WritingToKafkaApp { + + private static final String BOOTSTRAP_SERVERS = "hadoop001:9092"; + private static final String TOPIC_NAME = "storm-topic"; + + public static void main(String[] args) { + + + TopologyBuilder builder = new TopologyBuilder(); + + // 定义Kafka生产者属性 + Properties props = new Properties(); + /* + * 指定broker的地址清单,清单里不需要包含所有的broker地址,生产者会从给定的broker里查找其他broker的信息。 + * 不过建议至少要提供两个broker的信息作为容错。 + */ + props.put("bootstrap.servers", BOOTSTRAP_SERVERS); + /* + * acks 参数指定了必须要有多少个分区副本收到消息,生产者才会认为消息写入是成功的。 + * acks=0 : 生产者在成功写入消息之前不会等待任何来自服务器的响应。 + * acks=1 : 只要集群的首领节点收到消息,生产者就会收到一个来自服务器成功响应。 + * acks=all : 只有当所有参与复制的节点全部收到消息时,生产者才会收到一个来自服务器的成功响应。 + */ + props.put("acks", "1"); + props.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer"); + props.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer"); + + KafkaBolt bolt = new KafkaBolt() + .withProducerProperties(props) + .withTopicSelector(new DefaultTopicSelector(TOPIC_NAME)) + .withTupleToKafkaMapper(new FieldNameBasedTupleToKafkaMapper<>()); + + builder.setSpout("sourceSpout", new DataSourceSpout(), 1); + builder.setBolt("kafkaBolt", bolt, 1).shuffleGrouping("sourceSpout"); + + + if (args.length > 0 && args[0].equals("cluster")) { + try { + StormSubmitter.submitTopology("ClusterWritingToKafkaApp", new Config(), builder.createTopology()); + } catch (AlreadyAliveException | InvalidTopologyException | AuthorizationException e) { + e.printStackTrace(); + } + } else { + LocalCluster cluster = new LocalCluster(); + cluster.submitTopology("LocalWritingToKafkaApp", + new Config(), builder.createTopology()); + } + } +} diff --git a/code/Storm/storm-redis-integration/pom.xml b/code/Storm/storm-redis-integration/pom.xml index 04c43b4..52ee5b8 100644 --- a/code/Storm/storm-redis-integration/pom.xml +++ b/code/Storm/storm-redis-integration/pom.xml @@ -23,18 +23,52 @@ 8 + - maven-assembly-plugin + org.apache.maven.plugins + maven-shade-plugin - - src/main/resources/assembly.xml - - - - com.heibaiying.wordcount.ClusterWordCountApp - - + true + + + *:* + + META-INF/*.SF + META-INF/*.sf + META-INF/*.DSA + META-INF/*.dsa + META-INF/*.RSA + META-INF/*.rsa + META-INF/*.EC + META-INF/*.ec + META-INF/MSFTSIG.SF + META-INF/MSFTSIG.RSA + + + + + + org.apache.storm:storm-core + + + + + package + + shade + + + + + + + + + + diff --git a/code/Storm/storm-redis-integration/src/main/java/com/heibaiying/WordCountToRedisApp.java b/code/Storm/storm-redis-integration/src/main/java/com/heibaiying/WordCountToRedisApp.java index c1591d5..f3b7553 100644 --- a/code/Storm/storm-redis-integration/src/main/java/com/heibaiying/WordCountToRedisApp.java +++ b/code/Storm/storm-redis-integration/src/main/java/com/heibaiying/WordCountToRedisApp.java @@ -17,10 +17,6 @@ import org.apache.storm.topology.TopologyBuilder; /** * 进行词频统计 并将统计结果存储到Redis中 - *

- * 编译打包: mvn clean assembly:assembly -Dmaven.test.skip=true - * 提交Topology到集群: storm jar /usr/appjar/storm-redis-integration-1.0-with-dependencies.jar com.heibaiying.WordCountToRedisApp cluster - * 停止Topology: storm kill ClusterWordCountApp -w 3 */ public class WordCountToRedisApp { diff --git a/code/Storm/storm-redis-integration/src/main/resources/assembly.xml b/code/Storm/storm-redis-integration/src/main/resources/assembly.xml deleted file mode 100644 index dec0017..0000000 --- a/code/Storm/storm-redis-integration/src/main/resources/assembly.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - with-dependencies - - - - jar - - - false - - - / - true - true - runtime - - - org.apache.storm:storm-core - - - - \ No newline at end of file diff --git a/pictures/storm-hbase-result.png b/pictures/storm-hbase-result.png new file mode 100644 index 0000000000000000000000000000000000000000..78e1d897170681689c6a9304908ef5d94712533b GIT binary patch literal 32984 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 literal 0 HcmV?d00001 diff --git a/pictures/storm-hdfs-result.png b/pictures/storm-hdfs-result.png new file mode 100644 index 0000000000000000000000000000000000000000..79ad0fffc7b781d30c75141743590e8b492982d2 GIT binary patch literal 38477 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 htnc;zuv{&*p)`oZ}Uh~qBVefK|Ho7TK_%i+$| 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�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 literal 0 HcmV?d00001 diff --git a/pictures/storm-kafka-receiver.png b/pictures/storm-kafka-receiver.png new file mode 100644 index 0000000000000000000000000000000000000000..af86f14d104847ecdc7f49f289f4d3ef1040f666 GIT binary patch literal 53305 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

0AP2K)DHiL6;s)WzL9J*;koL1( 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 E0Rb;>jsO4v literal 0 HcmV?d00001 diff --git a/pictures/strom-kafka-consumer.png b/pictures/strom-kafka-consumer.png new file mode 100644 index 0000000000000000000000000000000000000000..d63dc2b7051d9433aaf02cda7109a80afae62036 GIT binary patch literal 27873 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 vd@Wy#xZDls0Wc2I0zKfF$346=Nm! literal 0 HcmV?d00001