ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:121.05KB ,
资源ID:17293640      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17293640.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(大数据处理技术在智能交通中的应用Word格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

大数据处理技术在智能交通中的应用Word格式.docx

1、图2 MapReduce框架MapReduce是一种并行处理模型,主要有两个处理步骤:map和reduce REF _Ref355625400 r h * MERGEFORMAT 9。如图2所示工作流程如下。Map端处理流程如下:1)计算框架先将要处理的数据进行分片,方便map任务处理。2) 分片完毕后,多台机器就可以同时进行map工作。map对每条记录的处理结果以 的形式输出中间结果,map输出的结果会暂且放在一个环形内存缓冲区中,当该缓冲区快要溢出时,会在本地文件系统中创建一个溢出文件,将该缓冲区中的数据写入这个文件。3)写入磁盘之前,线程根据reduce任务个数生成相同数量的分区。当ma

2、p任务输出记录时,会产生溢出文件,这时需将这些文件合并。文件不断排序归并后,最后生成一个已分区且有序的数据文件。最后将相应分区中的数据拷贝给相应的reduce任务。Reduce端处理流程如下:1) Reduce会接收到不同map任务传来的数据,如果reduce端接受的数据量相当小,则直接存储在内存中,如果数据量超过了该缓冲区大小的一定比例,则对数据合并后溢写到磁盘中。2) 随着溢写文件的增多,后台线程会将它们合并成一个更大的有序的文件,然后交给reduce函数处理,reduce函数安装用户定义的业务逻辑对数据进行处理并输出结果。Hadoop 在本质上是一个批处理系统。数据被引入 Hadoop文

3、件系统 (HDFS) 并分发到各个节点进行处理。最后将处理结果汇总,生成的结果文件存放在HDFS上。2.2StormStorm是Twitter开源的分布式实时计算系统 REF _Ref354672642 r h * MERGEFORMAT 8,Storm具有高容错性,水平扩展性好,快速,可靠处理消息的优点。Storm的核心概念是“流(stream)”,流是一个无限的元组序列。Strom为流转换提供两个基本组件:“Spouts”和“Bolts”。Spout是一个输入流组件,Spout将数据传递给另一个组件(Bolt)。Bolt执行任务并创建新的流作为下一个Bolt的输入流。整个过程就是一个“to

4、pology” REF _Ref355897436 r h * MERGEFORMAT 4如图3中Storm框架图所示。图3 Storm框架原理图Strom集群有主要有两类节点:主节点和工作节点。主节点上运行一个叫做“Nimbus”的守护进程,它负责在集群分发代码、分配任务和故障监测。而每个工作节点运行一个叫做“Supervisor”的守护进程。Supervisor监听分配给它任务的机器,根据Nimbus的委派在必要时启动和关闭工作进程,每个工作进程执行topology的一个子集,一个topology由很多运行在机器上的工作进程组成。Nimbus和Supervisors之间所有的协调工作是通过

5、一个Zookeeper集群,Nimbus的守护进程和Supervisors守护进程的状态维持在Zookeeper中或保存在本地磁盘上。这意味着Nimbus或Supervisors进程杀掉,而不需要做备份,这种设计结构使得Storm集群具有很高的稳定性。2.3S4S4 REF _Ref354673081 r h * MERGEFORMAT 5(Simple Scalable Streaming System)是Yahoo的一个开源流计算平台,它是一个通用的、分布式的、可扩展性良好、具有分区容错能力、支持插件的分布式流计算平台。S4将流的处理分为多个流事件Process Element(PE),每

6、个PE唯一处理一种流事件。S4将用户定制的PE放在名为Processing Element Container(PEC)的容器中。PEC加上通信处理模块就形成了逻辑主机Processing Node(PN)。PN负责监听事件,PEC接收源event,event经一系列PE处理后,在通信层Communication Layer的协助下分发事件或输出事件处理结果。在分发事件的过程中,S4会通过hash函数,将事件路由到目标PN上,这个hash函数作用于事件的所有已知属性值上。通信层有“集群管理”,“故障恢复到备用节点”,“逻辑节点到物理节点映射”的作用。同时通信层还使用一个插件式的架构来选择网络协

7、议,使用zookeeper在S4集群节点之间做一致性协作。图4 S4 processing node 结构图2.4HstreamingHStreaming是一个构建于Hadoop之上的实时分析平台 REF _Ref354673171 r h * MERGEFORMAT 6。HStreaming为Hadoop提供复杂事件处理中间件,为实时低延迟的Hadoop应用程序提供解决方案。HStreaming提供支持使用高层语言开发流分析程序的组件。平台使用流增强增版本的Apache Pig对数据流的进行加载,处理,存储和管理。平台支持两种不同数据处理方式:常规的基于文件的批处理方式和基于流处理方式。Pi

8、g会自动从数据的输入源和相应的子任务调度方式来推断数据处理方式(流或批处理)。图5 HStreaming 结构图HStreaming提供了一个名叫HStream的负载、存储功能函数。HStream函数能从TCP,UDP或HTTP流中加载数据,并将处理完的数据以HTTP数据流格式进行传输或者以Amazon S3的对象的形式存储。用户可以设置的一次处理流数据的批量大小 REF _Ref354673208 r h * MERGEFORMAT 7。数据经由MapReduce计算框架处理后会将结果和图表参数传递给VisStream(图标生成组件)生成图表。HStreaming目前主要利用实时的引擎来处理

9、视频、服务器、传感器以及其他机器上生成的数据流,并完全兼容Hadoop作为一个归档和批量处理系统,对于Hadoop用户,不用做任何改变,HStreaming能够通过利用相同的MapReduce算法和用户已经编写好的Pig 脚本进行流处理。2.5各大数据处理平台比较Storm与Hadoop之间的比较:Hadoop是将大量的离线数据进行数据切片处理,处理前要将处理的数据存放在hdfs上,其优势就是将计算工作放到拥有数据的结点上,提高效率。Storm则是将要处理的数据放在实时消息队列中的,用户只需写好topology逻辑,然后接收数据来处理。与Hadoop相比,Storm不用将数据预先存放在文件系统

10、上,就可以直接进行数据实时处理 REF _Ref354672642 r h * MERGEFORMAT 8。Hadoop的优点是处理数据量大,分析灵活,缺点就是慢,具体表现为:每次执行前要分发jar包,如果map数据超出了阈值,那么Hadoop就会将数据写入本地文件系统,然后在reduce的时候再读进来。Storm的优点是全内存计算,因为内存寻址速度是硬盘的百万倍以上,所以Storm的速度相比较Hadoop快。缺点就是需要很多的内存在支持高速计算。S4和Storm之间的比较:S4目前还处于半成品阶段,代码成熟度底,不支持动态部署,也没有提供很好的管理界面(如web管理界面)且只支持Java语言

11、开发,相反,Storm的代码成熟度高,开发部署,管理都很方便并支持多语言开发(支持Java,Clojure,其他非JVM语言)。S4和Storm都不完全支持failover。在一个服务器故障时,处理自动的转移到稳定的服务器。在交接中,S4存储在本地内存中的处理状态会丢失,而Storm会将节点处理状态维持在Zookeeper中,虽然两者都会丢失节点上的数据。Storm支持节点从正在运行的集群中增加或移除,而S4不支持。Storm与HStreaming之间的比较:HStreaming在实时Hadoop中功能强大,并支持复杂事件处理(CEP),但其缺乏一些关键解决方案组件包括Hadoop建模工具、设

12、备或云/SaaS版本以及业务应用程序 REF _Ref354673171 r h * MERGEFORMAT 6的支持。相对而言,Storm则较成熟。Storm属于全内存计算,速度快,但所需的内存资源多,HStreaming基于Hadoop,介于半内存和全磁盘计算,速度相对慢。3.面向交通大数据处理解决方案3.1总体框架结构设计交通数据的一个特点就是异构源多、数据量大,例如感应线圈、微波测速、视频监控、红绿灯调控系统等诸多设备每天产生了大量的原始数据。如何利用好这些多源的大量数据为交通决策与诱导提供便利,有效缓解城市拥堵难题显得尤为有价值。为此,在综合考虑了交通数据的特性以及应用需求的基础上,

13、本文设计了如图6所示的交通大数据解决方案,该方案是一个基于现有的开源软件、硬件以及应用系统上低成本的可靠的大数据处理平台,所包含的六层结构具体描述如下:交通异构数据源主要包括感应线圈、微波测速、视频监控、红绿灯调控系统等诸多设备产生的交通数据,根据不同的需求可分为实时处理数据和非实时处理数据。数据传输和同步层的主要实现数据的同步和数据传输,针对不同的数据特征分为实时数据和非实时数据两种类型。对于非实时数据,一般用作历史分析或者数据仓库操作,可以采取如Sqoop这样的数据传输工具,完成数据传输和同步的要求。而对于实时数据,一般采用发布订阅这种方式处理这种流计算数据是比较有效的,类似的工具有Tim

14、eTunnel。3)数据处理层是大数据处理平台的核心层,为了能够同时应付处理实时数据流以及用作历史分析或者数据仓库的批处理数据,分别设计了两套计算框架:一种是Hadoop生态系统计算框架。另一种以Storm为基础的实时计算框架。实时计算框架和非实时计算框架都有自己相应的任务,这些任务都由集群资源管理器Mesos管理。4)数据存储层用于保存数据处理层的最终或临时结果,该层主要有关系型数据库和非关系型数据库适应不同类型的数据。5)在存储层之下额外附加了一层对外接口层,其两个优点一是屏蔽了异构的存储逻辑,使得存储对高层应用透明;另一点则是对不同的组件(比如Impala,Hive等等)使用提供一个封装

15、,对开放人员提供一个统一的接口。6)应用层包含一些和交通数据相关的应用,比较常见的有流量分析、实时拥堵预测、交通诱导等。图6交通大数据处理框架3.2数据处理层设计本节将详细描述数据处理核心层的非实时数据和实时数据处理两种框架的内部结构和处理过程。(1)Hadoop批处理平台Hadoop是目前一种比较成熟的分布式数据处理平台,用来解决传统的大数据处理能力不足。采用Hadoop平台主要有以下优点:开源的免费软件,易于改造和更新;相对来说比较成熟,XX、淘宝等大公司已经在实际生产环境中已经使用;Hadoop分布式平台有许多可以集成在一起的组件,为我们处理交通数据提供了便利。综合实际情况,可以按以下表

16、1的组合方式构建Hadoop批处理平台。表1 Hadoop批处理平台上的组件组件功能MapReduce计算框架Hbase存储管理提高读写性能Sqoop数据抽取Impala交互式查询Hive数据仓库图7描述了表1中Hadoop各组件间关系结构。数据源通过数据抽取工具Sqoop抽取到HDFS上由HBASE数据库来进行管理,批处理任务的具体执行任务从HBASE中提取数据然后进行相应的计算,常见的有MapReduce、Impala等任务。图7 Hadoop批处理平台处理细节(2)Storm实时处理平台Storm是Twitter正在使用的实时流计算处理平台,对实时需求高的场合非常适用。采用Storm作为

17、我们实时计算平台的核心是因为它有如2.5节所说的诸多优点。图8描述了Storm平台的交通数据处理细节。图 8 Storm处理细节最左侧是数据来源,这些数据来源都是异构的,一种方式自然采取直接从数据源获取的方式,但是这样的方式扩展性和维护性不好,我们在中间增加一个中间件,即封装的一个数据抽取服务,可以看成一个信息队列,流计算框架从这里抽取信息。而由这个信息队列完成数据抽取的工作。这个数据抽取的服务即为整体架构中的数据传输平台。流计算框架再将处理完的数据放入分布式数据库中。(3)集群资源管理器MesosMesos是一种集群资源管理器。根据交通数据计算的需要,使用两种类型的计算框架,一种作为离线处理

18、,即Hadoop,主要做一些历史数据分析。另外一种则是流计算框架,直接对数据源的数据进行处理,然后给出相应结果并进行持久化存储。采用Mesos的优势主要是以下几点: 对资源的高利用率。 无需针对不同的计算框架部署两套集群,节约了成本。Mesos的组成结构如图9所示。原本框架有本身的调度器来调度任务,资源分配,然后这个功能交给了Mesos Master然后由Mesos Master做出资源分配的方案,交给每个节点上的Slave中的执行器,按Master要求的方法来分配资源,由执行器来完成具体的任务。图9 Mesos组成结构4.实验在本小节中,我们将在Hadoop和Storm集群上对平均行车速度这

19、个评价指标进行计算,表2是实验集群中一个Master节点和三个Slave节点的配置:表2实验集群配置名字CPU(个)硬盘操作系统内存Master节点130GCentOS6.22GSlave1节点Slave2节点Slave3节点(1) Hadoop实验平台在Hadoop的实验中,我们使用的Hadoop版本为Hadoop-0.20.2-CDH。实验中所用的卡口仿真数据是指:在某个卡口,某个时刻,车辆经过该卡口点的瞬时速度。通过对一段时间内,某一卡口点上平均速度的计算,可以得到该卡口点位上那一瞬间的通行情况。表3Hadoop实验结果记录数(条)数据大小(B)运行时间(s)39900000083558

20、40557上面中是在Hadoop实验平台上处理大小为8G的文本类型的卡口仿真数据的结果。从结果中可以看到,该CDH版本的Hadoop在处理8G的数据时要花费的时间为557秒,处理效率较高。(2) Storm实验平台实验使用Storm0.8.1版本,其他辅助软件的版本及功能如下,Zookeeper-3.4.5,主要用来实现Nimbus和Supervisor两者间的协调工作,管理集群中的不同组件;ZEROMQ-2.1.7,是内部消息系统,用于节点或进程间的通信,JZMQ是ZEROMQ的Java Binding。在Storm集群中,共使用4个Workers,每个Worker有4个Slots。 本实验

21、的仿真功能是对三个卡口点位产生的行车模拟数据计算对应卡口的平均行车速度,同时能将结果保存并实时更新平均行车速度,实验参数见表4所示,处理结果表明Storm展示了很迅速的数据并行处理能力,并且该平台还能实时更新数据结果。表4 Storm实验结果编号Topology名称Num executor记录数(万)运行时间SpoutsBoltsfs5271003685391m40s2es103685331m33s3gs2007485802m37s4hs50019085366m3sjs1000388586212m30s5.总结本文在分析和比较了目前流行的大数据处理平台和技术的基础上,针对异构交通数据源设计了同

22、时满足批处理和实时处理功能的交通大数据处理平台,并在此框架上对交通大数据进行实验测试和计算,实验结果表明本文提出的框架结构能实时、快速、准确地处理和计算交通大数据各项需求指标。参考文献1孟小峰,周龙骧,王珊数据库技术发展趋势J软件学报,2004,15(12):182218362Grobelnik, Marko. Big Data Tutorial EB/OL. 2012-10-02.3Barwick H. The “four Vs” of Big Data. Implementing Information Infrastructure Symposium EB/OL. 2012-10-02.

23、 .au/article/396198/iiis_four_vs_big_data/4Jonathan Leibiusky, Gabriel Eisbruch, Dario Simonassi. Getting Started with Storm. M. 2012-09-17.OReilly Media, Inc, USA5Leonardo Neumeyer, Bruce Robbins, Anish Nair, Anand Kesari.S4: Distributed Stream Computing Platform J.2010.ICDMW 10 Proceedings of the

24、2010 IEEE International Conference on Data Mining Workshops Pages 170-177.6James G. Kobielus, Stephen Powers, Brian Hopkins, Boris Evelson, Shannon Coyne. The Forrester Wave: Enterprise Hadoop Solutions, Q1 2012M.2012.Forrester Research, Inc.7HStreaming. HStreaming Getting Started Guide EB/OL. 2011-12-20.8Strom: http:/storm-9Jens Dittrich. Jorge-Arnulfo Quiane-Ruiz. Efcient Big Data Processing in Hadoop MapReduce J.2012-08.Proceedings of the VLDB Endowment VLDB Endowment Hompage archive Volume 5 Issue 12, August 2012 Pages 2014-201510Tom White. Hadoop权威指南(第二版)M.2011-6-1.清华大学出版社 全文完

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1