Storm
文章平均质量分 54
__Simon'
如山间清爽的风,如古城温暖的阳光。
展开
-
Storm实现日志自定义输出
Storm实现日志自定义输出一、 配置work.xml 在storm安装目录下的log4j2目录下的work.xml文件进行自定义文件配置: 1. 在appenders标签下增加RollingFile <RollingFilename="ALERT" fileName="${sys:workers.artifa...原创 2018-05-09 17:17:51 · 6422 阅读 · 0 评论 -
Storm流之NoneGrouping不分组
一、概述 在功能上和随机分组相同,为将来预留的。二、代码1.Spoutpackage com.test.csdn.nogrouping;import org.apache.storm.spout.SpoutOutputCollector;import org.apache.storm.task.TopologyContext;import org.apache....原创 2018-08-02 17:26:34 · 369 阅读 · 0 评论 -
Storm流之DirectGrouping指向型分组
一、概述 这种方式发送者可以指定下游的哪个任务可以接收这个元组。只有在数据流被声明为直接数据流时才能够使用直接分组方式。使用直接数据流发送元组需要使用 OutputCollector 的其中一个 emitDirect 方法。Bolt 可以通过 TopologyContext 来获取它的下游消费者的任务 id,也可以通过跟踪 OutputCollector 的 emit 方法(该方法...原创 2018-08-02 17:33:21 · 1059 阅读 · 0 评论 -
Storm流之PartialKeyGrouping关键字分组
一、概述 这种方式与按字段分组很相似,根据指定字段的值进行分组,不同的是,这种方式会考虑下游 bolt 数据处理的均衡性问题,在输入数据源关键字不平衡时会有更好的性能。 二、代码1.Spoutpackage com.test.csdn.partialkeygrouping;import org.apache.storm.spout.SpoutOutputColle...原创 2018-08-02 17:36:57 · 1075 阅读 · 0 评论 -
Storm排错调优之Spout拉取造成内存溢出(OOM)
Storm排错调优之Spout拉取造成内存溢出 原因分析: Storm框架的两个组件spout和bolt,由于Spout从Kafka拉取消息,bolt用于处理。一般情况下,处理速度低于拉取速度,导致bolt处理消耗资源过多。最终造成内存...原创 2018-08-16 11:18:31 · 3290 阅读 · 0 评论 -
Storm排错调优之Worker重启
Storm排错调优之Worker重启 在storm运行log中可以看到worker.log日志显示shutting down xxxworker。 在相同的时间点位于storm运行日志中的supervisor.log显示kill xx...原创 2018-08-16 12:10:20 · 2825 阅读 · 0 评论 -
Storm排错调优之SessionTimeout
Storm排错调优之SessionTimeout 在Storm的日志和zk的日志中均有如下连接超时信息:Unable to read additional data from client sessionid 0x364f4b880...原创 2018-08-16 14:08:06 · 3574 阅读 · 0 评论 -
storm集成kafka新版API(offset In Kafka)示例
本例storm版本为1.1.0 kafka版本为2.11.0.10.0.1 导入maven依赖 <!--引入storm --> <dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-core</artifac...原创 2018-11-01 13:26:31 · 1656 阅读 · 0 评论 -
storm集成kafka旧版API(offset In Zk)示例
编写主函数启动类的Topopackage com.simon.storm.kafka;import org.apache.storm.Config;import org.apache.storm.LocalCluster;import org.apache.storm.kafka.BrokerHosts;import org.apache.storm.kafka.KafkaSpou...原创 2018-11-01 14:05:31 · 487 阅读 · 0 评论 -
storm在zookeeper中的目录存储信息
storm在zk中的目录图:/-{storm-zk-root} -- storm在zookeeper上的根目录(默认为/storm) | |-/assignments -- topology的任务分配信息 | | | |-/{topology-id} -- 这个下面保存的是每个topology的assignments信息包括:...原创 2018-12-14 13:38:04 · 1232 阅读 · 0 评论 -
storm在zookeeper中心跳流程
storm和zookeeper的数据交互总结:Nimnus和Supervisor之间通过/storm/supervisor/topology-id对应的数据进行心跳保持。Supervisor在创建这个路径时采用的是临时节点模式,只要Supervisor死掉这个节点就会被删除,Nimbus就会将分配给这个Supervisor的任务重新进行分配 Worker和Supervisor之间/s...原创 2018-12-14 15:42:36 · 1215 阅读 · 1 评论 -
Storm流之AllGrouping全复制分组
一、概述 将所有的 tuple 复制后分发给所有 bolt task。每个订阅数据流的 task 都会收到 tuple 的拷贝。二、代码Spoutpackage com.test.csdn.allgrouping;import org.apache.storm.spout.SpoutOutputCollector;import org.apache.storm.t...原创 2018-08-02 17:21:05 · 964 阅读 · 0 评论 -
Storm流之GlobalGrouping全局分组
一、概述 全局分组方式将所有的 tuples 路由到唯一一个 task 上。Storm选取最小的 task ID 来选取接收数据的 task。注意,当使用全局分组时,设置 bolt 的 task 并发度是没有意义的,因为所有 tuple 都转发到同一个 task 上了。使用全局分组的时候需要注意,因为所有的tuple都转发到一个JVM实例上,可能会引起Storm集群中某个JVM或者...原创 2018-08-02 17:12:32 · 1033 阅读 · 0 评论 -
Storm流之FieldGrouping字段分组
Storm流之FieldGrouping字段分组一、 需求 字符串按照是否包含o分组二、 Topologypackage com.test.csdn;import com.test.storm.bolt.FieldPrintBolt;import com.test.storm.spout.SplitTestSpout;import ...原创 2018-04-26 12:06:22 · 2433 阅读 · 1 评论 -
Storm集成Kafka中KafkaSpout配置参数释义
Storm集成Kafka中KafkaSpout配置参数释义KafkaSpout构造:涉及到两个类: SpoutConifg、KafkaConfig、ZkHosts一、 SpoutConfig:zkServers: KafkaSpout保存offset的zookeeper所在地址. 立出来这个属性是为了防止offset保存位置不在kafka集群中....原创 2018-04-26 10:34:25 · 7597 阅读 · 1 评论 -
Storm流之多个Bolt聚合到一个Bolt
Storm流之多个Bolt聚合到一个Bolt一、 案例Demo 基于分发案例,将MinBolt、MidBolt、MaxBolt聚合到TotalBolt二、 FenFaTopology代码package com.test.csdn;import org.apache.storm.Config;import org.apache...原创 2018-04-19 18:47:13 · 3107 阅读 · 0 评论 -
Storm流之一个Spout分发多个Bolt
Storm流之一个Spout分发多个Bolt一、案例Demo Spout中生成若干数字。 大于0,小于100 的数字分发到MinBolt 大于100,小于200的数字分发到MidBolt 大于200 的数字分发到MaxBolt二、FenFaTopology...原创 2018-04-19 16:42:20 · 5313 阅读 · 3 评论 -
Storm整合Kafka、Redis、AMQ
Storm整合Kafka、Redis、AMQ一、需求 ogg监控Oracle数据的增删改查操作推到Kafka,Kafka推送Json数据串,Storm进行解析过滤操作,存储一份在Redis中,在推送到AMQ,前台页面利用WebSocket实时刷新取出AMQ消息缓存数据,展示页面。二、安装Storm、Kafka、Redis、AMQ三、创建java项目 四、引入p...原创 2018-04-17 22:20:42 · 577 阅读 · 0 评论 -
Storm集成Kafka和Redis
Storm集成Kafka和Redis一、 新建Strom项目 二、 引入pom依赖<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <spring.version>2.5.6</spring.version&g...原创 2018-04-17 22:13:12 · 1101 阅读 · 0 评论 -
Storm集成Redis
Storm集成Redis一、 新建项目二、 导入Pom依赖<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.原创 2018-04-17 17:08:43 · 209 阅读 · 0 评论 -
Storm相关概念
Storm相关概念Topologies : 拓扑,也俗称一个任务,类似于mapreduce中的jobSpouts : 拓扑的消息源Bolts : 拓扑的处理逻辑单元tuple:消息元组Streams : 流Stream groupings :流的分组策略Tasks : 任务处理单元Executor :工作线程Workers :工作进程Config...原创 2018-04-17 16:51:52 · 282 阅读 · 0 评论 -
Storm安装
Storm安装一、 安装zookeeper Storm的运行依赖zookeeper的协调管理。先安装zookeeper。 参见3.0.0二、 检查zookeeper三、 下载storm四、 上传storm五、 解压六、 更改名称七、 安装配置...原创 2018-04-17 16:46:47 · 167 阅读 · 0 评论 -
zookeeper+storm+kafka集群完全配置
zookeeper配置 参数名 说明 clientPort 客户端连接server的端口,即对外服务端口,一般设置为2181 dataDir 存储快照文件snapshot的目录。默认情况下,事务日志也会存储在这里。建议同时配置参数dataLogDir, 事务日志的写性能直接影响zk性能。 tickTime ZK中的一个时间单元。ZK中所有时间...原创 2018-07-27 16:14:28 · 2167 阅读 · 0 评论 -
storm使用zookeeper造成事务日志过大的解决方案
storm配置参数:https://blog.csdn.net/Simon_09010817/article/details/81236544其中:supervisor.heartbeat.frequency.secs supervisor心跳发送频率(多久发送一次) 默认为5sworker.heartbeat.frequency.secs worker的心跳...原创 2018-12-14 18:20:20 · 2247 阅读 · 0 评论