绪论知识
Storm架构
一个简单的Storm例子
Storm在交通数据处理中的应用
目录
Storm及交通实时数据处理
背景:大数据的产生
GB
TB
PB
EB
ZB
数据量的增长:
在2006 年,个人用户才刚刚迈进TB时代,全球一共新产生了约180EB的数据;
在2011 年,。
有市场研究机构预测(2009年):
到2020 年,整个世界的数据总量将会增长44 倍,(1ZB=10 亿TB)!
1GB = 2^30字节
1TB = 2^40字节
1PB = 2^50字节
1EB = 2^60字节
1ZB = 2^70字节
背景:大数据处理模式
主要的处理模式可以分为流处理(stream processing)和批处理(batch processing)两种。批处理是先存储后处理(store-process),而流处理则是直接处理(straight-through process)。(有时也分为在线、离线、近线三种)
batch processing
stream processing
背景:多种数据处理技术的出现
过去的十年是数据处理变革的十年, MapReduce、 Hadoop以及一些相关的技术使得我们能处理的数据量比以前要大得多得多。但是这些数据处理技术都不是实时的系统—它们设计的目的也不是为了实时计算。
然而大规模的实时数据处理已经越来越成为一种业务需求了, 而缺少一个“实时版本的hadoop”已经成为数据处理整个生态系统的一个巨大缺失。
Storm填补了这个缺失。Storm出现之前,需要自己手动维护一个由消息队列(Queues)和消息处理者(Workers)所组成的实时处理网络,消息处理者从消息队列取出一个消息进行处理,更新数据库,发送消息给其它队列进行进一步处理,但是这种计算方式的局限性太大:复杂、不健壮且扩展性差。
大数据实时流计算系统(一)
Yahoo的S4
S4是一个通用的、分布式的、可扩展的、分区容错的、可插拔的流式系统,Yahoo!开发S4系统,主要是为了解决:搜索广告的展现、处理用户的点击反馈。
在流式处理领域里,Storm的直接对手是S4。不过,S4冷淡的社区、半成品的代码,在实际商用方面输给Storm不止一条街。
Why Storm?
Storm:“Hadoop of realtime”、Distributed and fault-tolerant putation
Storm定义了一批实时计算的原语。如同hadoop大大简化了并行批量数据处理,storm的这些原语大大简化了并行实时数据处理。storm的一些关键特性如下:
分布式系统/运维简单/高度容错/无数据丢失/支持多种编程语言……
Storm发展现状
最新版本:
在GitHub上超过4000个项目负责人,全球共有29名代码贡献者。(12年)
很多公司在使用Storm,这些公司中不乏淘宝,百度,***,Groupon,雅虎等重量级公司。
绪论知识
Storm架构
一个简单的Storm例子
Storm在交通数据处理中的应用
目录
Storm集群:物理的
Storm集群主要由一个主节点(master node)和一群工作节点(worker nodes)组成,通过 Zookeeper集群进行协调。
主节点通常运行一个后台程序—— Nimbus,用于响应分布在集群中的节点,分配任务和监测故障。工作节点同样会运行一个后台程序—— Supervisor,用于收听工作指派并基于要求运行工作进程。每个工作节点都是topology中一个子集的实现。
Storm及交通实时数据处理 来自淘豆网www.taodocs.com转载请标明出处.