Strom
文章平均质量分 65
futureofstar
这个作者很懒,什么都没留下…
展开
-
Strom依赖软件安装
[size=large]一、下载zeroMq[/size] http://zeromq.org/intro:get-the-software [quote] tar -xzvf zeromq-2.1.7.tar.gz cd zeromq-2.1.7 ./configure make (普通帐户加sudo)...原创 2017-03-23 16:37:07 · 178 阅读 · 0 评论 -
Storm事务API
SpoutITransactionalSpout,同BaseTransactionalSpout,普通事务SpoutIPartitionedTransactionalSpout,同BasePartitionedTransactionalSpout,分区事务SpoutIOpaquePartitionedTransactionalSpout:同BaseOpaquePartitionedTr...原创 2017-05-19 16:00:53 · 160 阅读 · 0 评论 -
普通事务ITransactionalSpout实例
[size=large]1、普通事务Spout[/size][code="java"]/** * 普通事务Spout */public class MyTxSpout implements ITransactionalSpout{ private static final long serialVersionUID = 1L; /** *...原创 2017-05-20 15:45:08 · 128 阅读 · 0 评论 -
普通事务ITransactionalSpout实例之按天统计数据
[size=large]1、普通事务Spout[/size][code="java"]/** * 普通事务Spout */public class MyTxSpout implements ITransactionalSpout{ private static final long serialVersionUID = 1L; /** *...原创 2017-05-20 16:56:03 · 116 阅读 · 0 评论 -
分区事务IPartitionedTransactionalSpout实例
[size=large]1.分区事务spout[/size][code="java"]public class MyPtTxSpout implements IPartitionedTransactionalSpout{ /** * 分区事务spout */ private static final long serialVersionUID = 1L; p...原创 2017-05-21 11:02:44 · 174 阅读 · 0 评论 -
分布式远程调用drpc实例
[size=large]一、DRPC定义[/size]分布式dRPC(distributed RPC,DRPC)用于对Storm上大量的函数调用进行并行计算。对于每一次函数调用,Storm集群上运行的拓扑接收调用函数的参数信息作为输入流,并将计算结果作为输出流发射出去。一句话概括:Storm进行计算,根据客户端提交的请求参数,而返回Storm计算的结果。DRPC通过DRPC S...原创 2017-05-22 10:53:08 · 150 阅读 · 0 评论 -
不透明分区事务IOpaquePartitionedTransactional实例
1、spout[code="java"]public class MyOpaquePtTxSpout implements IOpaquePartitionedTransactionalSpout { /** * 将Coordinator发射数据动作下放到emitPartitionBatch类执行。 */ private static final long se...原创 2017-05-22 10:54:31 · 209 阅读 · 0 评论 -
Trident入门
英文原址:[url]https://github.com/nathanmarz/storm/wiki/Trident-tutorial[/url]翻译地址1:[url]http://blog.csdn.net/derekjiang/article/details/9126185#t3[/url]翻译地址2:[url]http://www.tuicool.com/articles/B...原创 2017-05-22 13:44:58 · 142 阅读 · 0 评论 -
Trident API和概念
[size=large]一、Trident API——Spout[/size] [b]ITridentSpout[/b]:最通用的Spout,可以支持事务或者不透明事务语义。 IBatchSpout: 一个非事务spout 。 [b]IPartitionedTridentSpout[/b]: 分区事务spout,从数据源(比如一个Kafka集群)读分区数据 ...原创 2017-05-23 10:57:39 · 170 阅读 · 0 评论 -
Trident实战之计算网站PV
[size=large]1、Trident实战之计算网站PV[/size][code="java"]/** * Trident实战之计算网站PV */public class TridentPVTopo { public static StormTopology buildTopology(LocalDRPC drpc) { Random random =...原创 2017-05-24 13:24:33 · 196 阅读 · 0 评论 -
Storm批处理事务原理详解
[size=large]事务:[/size]Storm容错机制通过一个系统级别的组件acker,结合xor校验机制判断一个tuple是否发送成功,进而spout可以重发该tuple ,保证一个tuple在出错的情况下至少被重发一次。在需要精确统计tuple的数量如销售金额场景时,希望每个tuple”被且仅被处理一次” 。Storm 0.7.0引入了Transactional Topolog...原创 2017-05-19 15:54:14 · 159 阅读 · 0 评论 -
集群统一启动和停止shell脚本开发
1、cd 2、ls -al 显示隐藏目录3、rm -rf .ssh 删除各节点的.ssh目录4、ssh master/slave 验证是否需要密码 exit退出登陆[size=large]一、设置ssh无密码访问slave节点[/size]1、各节点(master/slave)执行ssh-keygen -t rsa 建立ssh目录,一路敲回车,生成的密钥...原创 2017-05-17 09:56:56 · 338 阅读 · 0 评论 -
Storm启动配置
[size=large]一、安装Storm[/size] wget http://www.apache.org/dyn/closer.lua/storm/apache-storm-1.0.3/apache-storm-1.0.3.tar.gz tar xzvf ./apache-storm-1.0.3.tar.gz[size=large]二、新建data文件夹[/...原创 2017-03-29 17:40:46 · 198 阅读 · 0 评论 -
Storm 本地模式
本地模式,是在eclipse等编译器编写strom运行文件,在于模拟storm在集群运行的结果,便于代码的编写和调试。 一、下载开发环境的zip文件,将storm相关jar包导入编辑器。注意是zip文件,不是gz运行linux文件。 http://storm.apache.org/downloads.html 二、创建数据文件 [b]storm有Tai...原创 2017-04-09 22:25:36 · 554 阅读 · 0 评论 -
Storm 字符统计Demo
1、数据源读取,字符发射spout类[code="java"]/** * 字符发射spout类 */public class RandomSentenceSpout extends BaseRichSpout { private static final long serialVersionUID = 1L; SpoutOutputCollector _coll...原创 2017-04-14 13:57:44 · 99 阅读 · 0 评论 -
Storm高并发介绍
[size=medium][b]并发度:[/b][/size] worker:指的是component (spout或bolt),并行的跑在不同的machine上的topology子集。 一个Topology可以包含一个或多个worker,worker process就是执行一个topology的子集, 并且worker只能属于一个topology。设置worker数量[c...原创 2017-04-16 10:18:16 · 182 阅读 · 0 评论 -
storm分组策略介绍
[size=medium][b]一、storm数据来源[/b][/size]Spout的数据源:MQ:直接流数据源Db:只能读配置文件文件:只能学习用,其他无用。问题:1、分布式应用无法读;2、spout开并发会重复读Log文件增量数据:1、读出内容写入MQ,2、Storm处理[size=medium][b]二、分组策略[/b][/size]st...原创 2017-04-16 11:46:37 · 299 阅读 · 0 评论 -
Storm高并发运用WordSum
1、创建发射所有字符串统计总个数及去重个数处理类[code="java"]public class SumBolt implements IBasicBolt { /** * 对发射所有字符串统计总个数及去重个数 */ private static final long serialVersionUID = 1L; Map counts = new Ha...原创 2017-04-16 14:21:39 · 190 阅读 · 0 评论 -
storm高并发PV统计
[b][size=medium]一、PV统计思考[/size][/b]方案需要考虑分析多线程下,注意线程安全问题。线程安全:多线程处理的结果和单线程一致如下是否可行?不可行方案: 定义static long pv, Synchronized 控制累计操作。Synchronized 和 Lock在单个JVM下有效,但在多JVM下无效。可行方案两个方案:1...原创 2017-04-16 17:54:41 · 246 阅读 · 0 评论 -
storm高并发PV统计,利用zookeeper锁输出汇总值
汇总型方案:1、shuffleGrouping下,pv(单线程结果) * Executer并发数一个Executer默认一个task,如果设置Task数大于1,公式应该是:pv(单线程结果) * Task 数 ,同一个Executer下task的线程ID相同,taskId不同优点:简单、计算量小缺点:稍有误差,但绝大多数场景能接受优化:案例PVBolt中每个...原创 2017-05-14 14:42:09 · 162 阅读 · 0 评论 -
storm高并发UV统计
[size=small]统计高并发UV可行的方案(类似WordCount的计算去重word总数):bolt1通过fieldGrouping 进行多线程局部汇总,下一级blot2进行单线程保存session_id和count数到Map且进行遍历,可以得到:Pv、UV、访问深度(按每个session_id 的浏览数)2014-05-01 UV数(按日期统计)既然去重,必...原创 2017-05-14 22:05:15 · 382 阅读 · 0 评论 -
ITridentSpout、FirstN(取Top N)实现、 流合并和join
[size=large]一、ITridentSpout[/size]基于事务static interface ITridentSpout.BatchCoordinator static interface ITridentSpout.Emitter 接口类的实现和之前事务ITransactionalSpout 非常类似。[size=large...原创 2017-05-25 10:01:23 · 152 阅读 · 0 评论