`
harry
  • 浏览: 179820 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

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

分享到:
评论
1 楼 hzxlb910 2013-07-19  
引用

详细内容请访问我的新博客地址:
http://xiaofengmetis.com/?p=27

能否把您这个例子的代码发给我学习一下,409235520@qq.com,谢谢。

相关推荐

    open-street-slack-bot

    如果在第39条街道上午签到的第一列中有snow , wind , rain或storm ,则会创建取消消息,否则将创建正常消息。 有关消息的格式/自定义,请参见。 最后,检查ts.txt是否存在。 该文件包含有关上一篇文章的时间

    大数据与Hadoop.doc

    第一,数据体量大。大数据一般指在10TB(1TB=1024GB)规模以上的数据量, 目前正在跃升到PB(1PB=1024TB)级别。不仅存储量大,计算量也大。 第二,数据类型多。除了数值数据,还有文字、声音、视频等,包括网络...

    企业数据运营管理与数据分析方法论.pdf

    品和模块 制定数据资产管理规划 第一阶段 解决数据孤岛问题 第二阶段 解决数据口径问题 第三阶段 解决数据价值问题 数据仓库 采集调度平台 BI展现平台 报表平台 企业数据标准 数据治理标准 开放数据服务接口 开放BI...

    大数据期末知识点总结.pdf

    ⼤数据期末知识点总结 ⼤数据特点: ⼤数据...Zookeeper:存储信息,1任务拓扑,任务分配,任务执⾏状 态,2从节点状态,⼯作进程状态,⼼跳信息,3集群状态配置信息 Nimbus master资源分配,任务调度,状态监控,故障

    六:大数据架构-Flink+AI.pdf

    后来随着⼤家认识到数据时效性的重要作⽤,Twitter 开源的流计算引擎 Storm 红极⼀时,各 种流计算引擎也纷纷登场,其中也包括了Flink。由于成本、计算准确性和容错性等⽅⾯的考虑,各家企业纷纷使⽤起了被称为 的...

    java开源包1

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    JAVA上百实例源码以及开源项目源代码

     当用户发送第一次请求的时候,验证用户登录,创建一个该qq号和服务器端保持通讯连接得线程,启动该通讯线程,通讯完毕,关闭Scoket。  QQ客户端登录界面,中部有三个JPanel,有一个叫选项卡窗口管理。还可以更新...

    JAVA上百实例源码以及开源项目

     当用户发送第一次请求的时候,验证用户登录,创建一个该qq号和服务器端保持通讯连接得线程,启动该通讯线程,通讯完毕,关闭Scoket。  QQ客户端登录界面,中部有三个JPanel,有一个叫选项卡窗口管理。还可以更新...

    java开源包11

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包2

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包3

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包6

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包5

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包10

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包4

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包8

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包7

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包9

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    java开源包101

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

    Java资源包01

    MyBatchFramework 是一个开源的轻量级的用以创建可靠的易管理的批量作业的Java包,主要特点是多线程、调度、JMX管理和批量执行报表,执行历史等。 SIP协议包 jSIP.tar jSIP这个Java包目标是用Java实现SIP(SIP:...

Global site tag (gtag.js) - Google Analytics