Storm的第一份作业

去年在公司做一些实时数据分析的程序,基本上依靠的是分布式缓存系统(像我们公司的tair或者使用MongoDB这样的kv数据库),他们具备的原子递增功能可以用来作实时的计数。这种方式要是遇到复杂的统计规则,那么设计所需的key就变得异常困难。还有个最大的缺点,一旦分布式缓存系统发生异常或者重启的时候,你的计数就完全不准确了。

很早开始关注storm了,本来想山寨一个。最近找了几个公司里比较关注这方面的牛人聊了一下,大家觉得现有开源的实时数据处理的方案中就是它最靠谱了。因此,我准备好好用用storm,做几个经典的实时数据分析案例出来。

刚开始接触storm,第一份作业准备做一个简单例子,先在本地模式下跑。

我们假定有个交易系统,需要做一个针对每个ip订单创建量做实时统计(不知道这个规则是不是太简化了)。

在介绍怎么做之前,我们先来了解一些storm的基本概念:

Topologies

直译过来是拓扑结构的意思。它是storm里面描述一个实时程序的单位,有点像Hadoop的MapReduce Job。但也很不像,一个topology一旦启动就会一直在哪里运行着(除非你主动把它停止),而MapReduce Job一次跑完就结束了。topology其实就是描述了一个由spouts和bolts组成并通过流分组(stream grouping)方式连接的拓扑图。如下图所示:

。。。。

详细内容请访问我的新博客地址:

http://xiaofengmetis.com/?p=27

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值