Storm及交通实时数据处理课件.ppt

上传人(卖家):晟晟文业 文档编号:4714936 上传时间:2023-01-04 格式:PPT 页数:29 大小:941KB
下载 相关 举报
Storm及交通实时数据处理课件.ppt_第1页
第1页 / 共29页
Storm及交通实时数据处理课件.ppt_第2页
第2页 / 共29页
Storm及交通实时数据处理课件.ppt_第3页
第3页 / 共29页
Storm及交通实时数据处理课件.ppt_第4页
第4页 / 共29页
Storm及交通实时数据处理课件.ppt_第5页
第5页 / 共29页
点击查看更多>>
资源描述

1、绪论知识绪论知识StormStorm架构架构一个简单的一个简单的StormStorm例子例子StormStorm在交通数据处理中的应用在交通数据处理中的应用目录1PPT课件GBTBPBEBZB数据量的增长:在2006 年,个人用户才刚刚迈进TB时代,全球一共新产生了约180EB的数据;在2011 年,这个数字达到了1.8ZB。有市场研究机构预测(2009年):到2020 年,整个世界的数据总量将会增长44 倍,达到35.2ZB(1ZB=10 亿TB)!1GB=230字节1TB=240字节1PB=250字节1EB=260字节1ZB=270字节2PPT课件 主要的处理模式可以分为流处理(strea

2、m processing)和批处理(batch processing)两种。批处理是先存储后处理(store-process),而流处理则是直接处理(straight-through process)。(有时也分为在线、离线、近线三种)batch processingstream processing3PPT课件 过去的十年是数据处理变革的十年,MapReduce、Hadoop以及一些相关的技术使得我们能处理的数据量比以前要大得多得多。但是这些数据处理技术都不是实时的系统 它们设计的目的也不是为了实时计算。然而大规模的实时数据处理已经越来越成为一种业务需求了,而缺少一个“实时版本的hadoop

3、”已经成为数据处理整个生态系统的一个巨大缺失。Storm填补了这个缺失。Storm出现之前,需要自己手动维护一个由消息队列(Queues)和消息处理者(Workers)所组成的实时处理网络,消息处理者从消息队列取出一个消息进行处理,更新数据库,发送消息给其它队列进行进一步处理,但是这种计算方式的局限性太大:复杂、不健壮且扩展性差。4PPT课件Yahoo的S4S4是一个通用的、分布式的、可扩展的、分区容错的、可插拔的流式系统,Yahoo!开发S4系统,主要是为了解决:搜索广告的展现、处理用户的点击反馈。在流式处理领域里,Storm的直接对手是S4。不过,S4冷淡的社区、半成品的代码,在实际商用方

4、面输给Storm不止一条街。5PPT课件Facebook 的PumaFacebook使用puma和Hbase相结合来处理实时数据,使批处理计算平台具备一定实时计算能力。不过这不算是一个开源的产品。只是内部使用。相关论文:Apache Hadoop Goes Realtime at Facebook。6PPT课件 Storm:“Hadoop of realtime”、Distributed and fault-tolerant realtime computation Storm定义了一批实时计算的原语。如同hadoop大大简化了并行批量数据处理,storm的这些原语大大简化了并行实时数据处理。

5、storm的一些关键特性如下:分布式系统分布式系统/运维简单运维简单/高度容错高度容错/无数据丢失无数据丢失/支持多种编程语言支持多种编程语言7PPT课件 最新版本:0.9.1 在GitHub上超过4000个项目负责人,全球共有29名代码贡献者。(12年)很多公司在使用Storm,这些公司中不乏淘宝,百度,Twitter,Groupon,雅虎等重量级公司。8PPT课件绪论知识绪论知识StormStorm架构架构一个简单的一个简单的StormStorm例子例子StormStorm在交通数据处理中的应用在交通数据处理中的应用目录9PPT课件 Storm集群主要由一个主节点(master node)

6、和一群工作节点(worker nodes)组成,通过 Zookeeper集群进行协调。主节点通常运行一个后台程序 Nimbus,用于响应分布在集群中的节点,分配任务和监测故障。工作节点同样会运行一个后台程序 Supervisor,用于收听工作指派并基于要求运行工作进程。每个工作节点都是topology中一个子集的实现。10PPT课件master11PPT课件 在Storm中,应用程序实现实时处理的逻辑被封装进Storm中的topology中。一个topology是由一组Spout组件(数据源)和Bolt组件(数据操作)通过Stream Groupings进行连接的图。12PPT课件uSpout

7、:在一个topology中产生源数据流的组件,从来源处读取数据并放入topology。uBolt:在一个topology中接受数据然后执行处理的组件。13PPT课件 流(Stream)Stream是Storm中的一个核心概念,Storm将输入的数据看成流,它是以tuple为单位组成的一条有向无界的数据流。tupletupletupletupletupletuple14PPT课件 Stream Groupings:消息的分组方法消息的分组方法。Storm提供了六种分组方法:提供了六种分组方法:1.随机分组(Shuffle grouping):随机分发tuple到Bolt的任务,保证每个任务获得相

8、等数量的tuple。tupletuplebolt3bolt2bolt1ABA15PPT课件2.字段分组(Fields grouping):根据指定字段分割数据流,并分组。例如,根据“user-id”字段,相同“user-id”的元组总是分发到同一个任务,不同“user-id”的元组可能分发到不同的任务。tupletuplebolt3bolt2bolt1ABAB16PPT课件3.全部分组(All grouping):tuple被复制到bolt的所有任务。这种类型需要谨慎使用。tupletuplebolt3bolt2bolt1ABAB17PPT课件4.全局分组(Global grouping):全

9、部流都分配到bolt的同一个任务。明确地说,是分配给ID最小的那个task。5.无分组(None grouping)6.直接分组(Direct grouping)18PPT课件19PPT课件uNimbus:负责资源分配和任务调度.uSupervisor:负责接受nimbus分配的任务,启动和停止属于自己管理的worker进程.uTopology:storm中运行的一个实时应用程序.uTask:worker中每一个spout/bolt的线程称为一个task.uSpout:在一个topology中产生源数据流的组件.uBolt:在一个topology中接受数据然后执行处理的组件.uTuple:一次

10、消息传递的基本单元.uStream grouping:消息的分组方法20PPT课件绪论知识绪论知识StormStorm架构架构一个简单的一个简单的StormStorm例子例子StormStorm在交通数据处理中的应用在交通数据处理中的应用目录21PPT课件 在这个例子中,我们会实现一个简单的topology来统计一个文件中的每个单词出现的次数。我们可以把这个例子认为是storm中的“hello world”。为了实现这个topology,我们将使用一个spout来负责读取单词,第一个bolt来标准化单词,第二个bolt来为单词计数,如下图所示:22PPT课件该实例的项目结构如下,其中Topol

11、ogyMain.java是整个项目的入口。23PPT课件public class WordReader implements IRichSpout public void open(Map conf,TopologyContext context,SpoutOutputCollector collector)try this.context=context;this.fileReader=new FileReader(conf.get(wordsFile).toString();catch(FileNotFoundException e)throw new RuntimeException(E

12、rror reading file+conf.get(wordFile)+);this.collector=collector;24PPT课件public void nextTuple()if(completed)try Thread.sleep(1);catch(InterruptedException e)/Do nothingreturn;String str;BufferedReader reader=new BufferedReader(fileReader);trywhile(str=reader.readLine()!=null)this.collector.emit(new V

13、alues(str);catch(Exception e)throw new RuntimeException(Error reading tuple,e);finallycompleted=true;25PPT课件 WordNormalizer负责获取行并且标准化行。它会将行分隔成单词,将单词转化成小写并且trim单词,发送给下一个Bolt.WordCounter负责为单词计数。26PPT课件public static void main(String args)throws InterruptedException/Topology definitionTopologyBuilder bu

14、ilder=new TopologyBuilder();builder.setSpout(word-reader,new WordReader();builder.setBolt(word-normalizer,new WordNormalizer().shuffleGrouping(word-reader);builder.setBolt(word-counter,new WordCounter(),2).fieldsGrouping(word-normalizer,new Fields(word);/ConfigurationConfig conf=new Config();conf.pu

15、t(wordsFile,args0);conf.setDebug(false);/Topology runconf.put(Config.TOPOLOGY_MAX_SPOUT_PENDING,1);Creating Our First Topology|17LocalCluster cluster=new LocalCluster();cluster.submitTopology(Getting-Started-Toplogie,conf,builder.createTopology();Thread.sleep(1000);cluster.shutdown();27PPT课件绪论知识绪论知识StormStorm架构架构一个简单的一个简单的StormStorm例子例子StormStorm在交通数据处理中的应用在交通数据处理中的应用目录28PPT课件大数据处理技术在智能交通中的应用-周为钢选自第八届中国智能交通年会优秀论文集基于storm的实时GPS数据客流特征分析系统来自新浪博客29PPT课件

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(Storm及交通实时数据处理课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|