《智慧交通云平台方案建议书.doc》由会员分享,可在线阅读,更多相关《智慧交通云平台方案建议书.doc(90页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、目 录智慧交通云平台技术方案建议书目 录1系统总体设计11.1云计算系统设计方案概述11.1.1系统基本功能11.1.2主要设计思想和设计目标、设计原则11.1.3智慧交通云平台的云计算解决方案21.1.4系统的主要技术特点31.2系统总体构架41.2.1系统基本组成与构架41.2.2系统功能构架41.2.3系统总体构架与功能模块81.3系统基本功能与处理方案101.3.1交管卡口数据入库功能与处理方案101.3.2数据存储功能与处理方案111.3.3查询分析功能与处理方案131.4系统互联与管理141.4.1组网方案141.4.2网络管理151.4.3系统安全161.5系统可靠性与扩展性17
2、1.5.1系统可靠性171.5.2系统扩展性191.6系统设计性能201.6.1交管数据流量处理能力201.6.2数据存储能力201.6.3查询分析计算性能212系统设计实施与关键技术方法222.1系统软硬件平台222.2数据处理流程222.3数据存储子系统242.3.1海量数据分布式数据存储构架242.3.2适应应用需求的混合存储策略262.3.3HDFS数据存储262.3.4大数据处理系统数据立方292.43.3.1 数据立方的体系架构292.4.1Database数据存储362.4.2数据存储的可靠性382.4.3数据压缩392.5数据查询与统计分析子系统412.5.1数据查询与统计分析
3、系统基本构架412.6基于云方案的交管数据查询索引与查询优化技术412.6.1基于数据立方的交管数据查询索引处理方案412.7交管数据处理集群的可靠性与负载均衡设计422.7.1负载均衡处理机的单点失效容错处理422.7.2查询处理机的单点失效容错处理462.8计算与存储集群的可靠性与负载均衡设计472.8.1计算与存储集群Master单点失效容错处理472.8.2计算与存储集群的负载均衡处理532.8.3HDFS的可靠性设计562.8.4数据立方可靠性设计582.8.5MapReduce计算可靠性设计602.9查询统计计算可靠性与负载均衡设计622.9.1基于Zookeeper的单点失效和负
4、载均衡设计622.10系统安全性设计642.10.1安全保障体系框架642.10.2云计算平台的多级信任保护662.10.3基于多级信任保护的访问控制702.10.4云平台安全审计722.10.5云计算综合安全网关753综合业务应用功能接口及效果793.1实时监控793.1.1实时车辆监控793.1.2报警车辆实时监控793.2数据查询813.2.1车辆信息查询813.2.2报警车辆查询813.3车辆轨迹查询823.3.1车辆查轨迹823.4事件检测报警833.4.1套牌车辆自动报警833.4.2同行车辆分析报警833.5流量统计和分析844详细设备配置清单85图表 1 智慧交通云平台云计算解
5、决方案3图表 2 智慧交通云平台的基本组成与构架4图表 3 智慧交通云平台总体构架与功能模块图8图表 4 智慧交通云平台架构10图表 5 数据存储处理架构12图表 6 交管数据接入13图表 7组网方案14图表 8 分布式文件存储系统吞吐量指标21图表 9 系统软硬件结构25图表 10 数据汇总上报处理流程26图表 11 实时数据入库流程26图表 12 分布式计算流程27图表 13 Hadoop结构28图表 14 Hdfs结构31图表 15 HDFS Namenode、DataNode和客户端们之间的交互32图表 16 HDFS数据压缩与组织38图表 17 数据查询子系统构架39图表 18 用户
6、界面图40图表 19 实时报警功能40图表 20 车辆轨迹回放41图表 21 负载均衡机分布图43图表 22 负载均衡机宕机预案44图表 23 Master节点宕机预案45图表 24 查询处理单点失效容错处理46图表 25 Master单点失效容错处理47图表 26 AvatarNode0以Pimary启动过程49图表 27 AvatarNode1以Standby启动过程50图表 28 DataNode启动过程50图表 29 AvatarNode0宕机后的状态51图表 30 AvatarNode1切换为Primary过程51图表 31 AvatarNode0重启过程52图表 32 Avatar
7、Node启动切换流程图53图表 33 Avatar体系架构图56图表 34 数据立方系统架构58图表 35 作业提交61图表 36 JobTracker0宕机61图表 37 作业注销62图表 38 Zookeeper基本工作结构图62图表 39 基于Zookeeper的查询分析计算单点失效和64图表 40 基于深度防护战略的IATF模型64图表 41 云部署模型的实现65图表 42 多级信任保护66图表 43 基于可信第三方的平台认证67图表 44 主要因素平台证书67图表 45 云存储安全子系统接口关系图70图表 46 基于多级信任保护的多级访问控制流程71图表 47 数据安全交换平台71图
8、表 48 云存储安全审计体系结构73图表 49 安全日志审计系统结构图74图表 50 Cloud-USG三种部署模式77系统总体设计1 系统总体设计1.1 云计算系统设计方案概述1.1.1 系统基本功能按照全省公安机关信息化建设总体规划,为实现对车辆归属地分析和车主关联分析、车辆之间轨迹分析、布控,布控比对、分析伴随、异地突发情况分析、高危地、重点车辆、案件关联性、套牌车辆查询等建设目标,为交通管理、治安管控、侦查破案、巡逻防范、反恐处突等各项公安工作提供服务保障。系统的基本功能和性能如下:海量历史交通监控数据汇总能够对千亿级的海量历史交通监控数据进行汇总处理。海量原始交通监控数据上报能够对千
9、亿级的海量上报交通监控数据进行上报处理。海量原始数据实时入库、生成索引能够对流量超过300万条/天的全量原始交通监控数据流进行实时处理。海量数据存储、计算能够存储千亿级别的数据, 并完成各种复杂业务应用计算。千亿级数据秒级查询能力高效索引算法,智能化调度任务系统,满足秒级查询速度。秒级实时业务响应高效实时数据通道,对于像实时监控、告警等实时业务,提供秒级响应时间。1.1.2 主要设计思想和设计目标、设计原则设计思想:将海量数据分解到由大量X86架构计算机构成的低成本云计算平台上进行实时处理,依靠分布式云计算软件进行容错,从而提升智慧交通云平台海量数据分析的实时性和性价比。设计目标:利用大量性价
10、比高的计算机,建立云计算平台,能够对流量超过300万条/天的原始交通监控数据流进行实时处理,提供车辆归属地分析、车主关联分析、车辆之间轨迹分析、布控,布控比对、分析伴随、异地突发情况分析、高危地、重点车辆、案件关联性、套牌车辆查询等多种业务支持。系统具有可动态可伸缩性、高度容错性和响应实时性,达到较之传统方案有一个数据量级的性能价格比提升。设计原则:(1)前瞻性技术与实际应用环境相结合本项目把握技术正确性和先进性是前提,但是前瞻性技术实施必须在云计算平台的实际应用环境和实际监控流量的基础上进行,必须结合云计算平台的实际情况进行研究和开发,只有与实际应用环境相结合才有实际应用价值。(2)学习借鉴
11、国外先进技术与自主创新相结合在云计算平台用于超大规模数据处理方面,国内外几乎是在一个起跑线上;但在关键技术研究及既往的技术积累方面,国外一些大公司有着明显的优势。同时,智慧交通云平台所将要面对的交通监控数据流高达300万条/天,是一个世界级的云计算应用。我们将积极学习借鉴国外先进的云计算技术,同时与自主创新相结合,形成功能强大、性能卓越的能够满足实际应用环境需求的云计算数据处理和分析平台。1.1.3 智慧交通云平台的云计算解决方案在公安网内部,构建若干X86架构计算/存储节点,虚拟出海量存储空间、处理能力和数据管理能力。同时研制面向应用的分布式数据处理软件,满足数据汇总、数据上报、数据入库、数
12、据查询、数据计算和数据管理等应用需求。图表 1 智慧交通云平台云计算解决方案1.1.4 系统的主要技术特点实时性:平台在高效率并行分布式软件数据立方的支撑下,可以实时完成交管数据入库、分析和管理工作,如数据汇总、数据上报、数据入库、数据查询、数据计算和数据管理等。海量数据入库不会出现数据堆积现象,各类分析和查询工作基本都在秒级完成,具有前所未有的高效性。高可靠性:基于对云计算可靠性深厚的研究积累,彻底解决了当前分布式计算平台易出现的单点故障问题。任何一个节点出现故障,系统将自动屏蔽,而且不会出现丢失数据的现象。包括查询任务分配节点、计算任务分配节点、HDFS元数据节点、HDFS数据存储节点、M
13、apReduceJob Tracker节点、MapReduce Worker节点、DataCube管理节点、DataCube服务节点等。可伸缩性:在不停机的情况下,增加节点,平台的处理能力自动增加;减少节点,平台的处理能力自动缩减。这样,可以做到与云计算平台的无缝对接,根据计算和存储任务动态地申请或释放资源,最大限度地提高资源利用率。高性价比:采用X86架构廉价计算机构建云计算平台,用软件容错替代硬件容错,大大节省成本。在目标性能和可靠性条件下,可比传统的小型机加商用数据库方案节省10倍左右的成本。全业务支持:采用分布式数据库模式,绝大部分海量数据存放于分布式平台并进行分布式处理,少量实时性要
14、求很高的数据存放于关系数据库中,可支撑各种类型的业务。不仅支撑查询、统计、分析业务,还可支撑深度数据挖掘和商业智能分析业务。1.2 系统总体构架1.2.1 系统基本组成与构架智慧交通云平台是一个处于交管数据采集与交管数据监测应用之间的系统。从系统基本组成与构架上来看,该共享平台由7个主要部分组成:历史数据汇总处理系统,上报数据上报系统,实时数据入库系统,交管数据存储系统,交管数据查询分析应用系统,数据管理系统以及系统管理。在基础设施构架上,该平台将架构将构建在云计算平台之上,利用现有的计算资源、存储资源和网络资源,作为智慧交通云平台的基础设施和支撑平台。1.2.2 系统功能构架智慧交通云平台需
15、要提供的7大主要功能描述如下。(1)历史卡口数据汇总处理系统历史卡口数据汇总处理主要负责把分散的数据中心的历史卡口数据,进行读取解析处理,并将处理后的历史数据汇入一个统一的数据中心。在内部处理模块上,历史卡口数据汇总系统主要包括三个模块:读取模块、解析模块和汇总模块。读取模块主要负责各个数据中心历史数据的读取处理,解析模块主要负责把读取到的历史卡口数据解析成合理的数据格式,而汇总模块主要负责把解析好的历史卡口数据上传到统一的数据中心。在系统构架上,为了满足分散的数据中心处理需要,需要在每一个数据中心处安装一个数据汇总程序。(2)卡口数据上报处理系统卡口数据上报处理负责把各地市数据中心的卡口数据
16、,按照一定的需求(按时间段或一定的数据量),上报给省厅数据中心。在内部处理模块上,上报数据上报系统主要包括三个模块:读取模块、解析模块和上报模块。读取模块主要负责市数据中心需要上报数据的读取处理,解析模块主要负责把读取到的卡口数据解析成合理的数据格式,而上报模块主要负责把解析好的数据上传到的省厅数据中心。在系统构架上,为了满足各地市数据中心处理需要,需要在各地市数据中心处安装一个数据上报程序。而省厅数据中心需要提供数据上报的接口。(3)实时卡口数据入库系统实时卡口数据入库系统主要负责各地市每个卡口产生的数据实时入库。在内部处理模块上,实时数据入库系统主要包括三个模块:接受模块、解析模块和数据入
17、库模块。接受模块主要负责接收每个卡口产生的数据流,解析模块主要负责把接受到的数据流解析成合理的数据格式,而数据入库模块负责把解析好的数据加入到市数据中心。在系统架构上,为了使每个卡口的数据能实时入库各地市数据中心,需要在每一个负责接受卡口数据的工控机上安装一个实时数据入库系统。(4)交管数据存储系统原始交管数据,将全部存储在智慧交通云平台的云存储资源中。资源池提供两种存储资源:一种是结构化数据存储资源,用于存储少量的接口中间数据;另一种是分布式文件系统,用于存储海量的非结构化数据。为了满足和适应数据量、数据特征和查询处理的不同需求,将采用一种混搭式的数据存储方案。对容量巨大、常规数据库难以处理
18、的数据,如交管数据,将主要存储在基于数据立方系统中;这些数据将通过数据立方的接口进行访问和计算处理。而对于部分数据量不大、且查询响应性能要求很高的数据,如用于报警比对的中间数据,将被存放在关系数据库中。关系数据库将采用MySQL。这些数据将通过结构化数据存储访问接口(如JDBC)进行访问。在存储构架上,若以存储3年的原始交管数据、报警信息数据和针对快速查询建立的索引数据,在300万条/天的交管数据流量下并考虑未来的数据量的增长,将大约需要512TB的存储容量,按照每个存储节点16TB的存储容量,加上少量的冗余节点,将需要32个存储节点。(5)交管数据查询分析应用系统交管数据查询分析应用主要提供
19、包括车辆归属地分析、车主关联分析、车辆之间轨迹分析、布控,布控比对、分析伴随、异地突发情况分析、高危地、重点车辆、案件关联性、套牌车辆查询、车辆轨迹回放等功能。车辆轨迹查询处理时,由于交管数据量巨大,难以存储在常规的关系数据库中,而如果直接存储在HDFS中又难以保证查询效率。为此,需要考虑将交管数据存储到数据立方中处理。此外,用户从客户端发起以上各种数据查询分析任务时,也会产生大量并发的查询任务。以上各种查询分析计算任务的处理将需要考虑在计算集群上进行并行化任务调度和负载均衡处理。这些并行计算任务及负载均衡处理将使用Zookeeper基于计算集群完成统一的控制和实现。在系统构架上,以上查询分析
20、计算任务将需要使用一个大规模数据并行计算集群。在编程实现上,存储在数据库中的数据将使用常规的数据库查询语言实现;对存储在数据立方中的交管数据,针对不同的处理要求,在数据量极大而处理实时性要求不是特别高的情况下,为了方便对海量数据的并行处理,将采用MapReduce编程方式实现;而对于那些实时性要求很高的查询分析计算,由于MapReduce启动作业需要较长的时间开销,将不适合采用MapReduce编程实现,而需要用非MapReduce编程方式实现。(6)数据管理系统在实际使用中,可能用户会对某一时间段或者类型的数据特别关心,就可以通过数据管理系统查询并导出这部分数据以供使用。包括数据查询和数据导
21、出两大部分。数据查询让用户以自定义的条件查询出数据,而数据导出就是将这些数据以合理的格式导出到数据中心以外。(7)系统管理系统管理主要包括智慧交通云平台的配置管理、系统安全管理、系统用户管理,以及数据备份、系统故障监测复等管理维护功能。配置管理是其中最主要的部分,是系统各个模块正常运行的基础。系统应能够对网络地址、设备地址等进行配置;能够对用户做权限管理,以防止数据外泄;并能及时有效的对数据进行备份和故障检测等工作,防止数据的意外丢失。系统应支持树图、数据表格、网络拓扑图形式展示配置数据。1.2.3 系统总体构架与功能模块基于以上基本的系统组成和功能构架,系统的详细总体构架和功能模块设计如图所
22、示。图表 2 智慧交通云平台总体构架与功能模块图上图中,自底向上分为五个层面。最下层是硬件平台层,将使用南京市公安局云计算中心所提供的计算、存储和网络资源。从系统处理系统的角度看,这一层主要包括云存储计算集群,此外还包括接口和管理服务器、包括用于实现客户端访问的Web服务器。第二层是系统软件层,包括移动的云存储系统软件,综合分析云计算软件平台,以及Web服务软件等。云存储系统将提供基于MySQL关系数据库的结构化数据存储访问能力,以及基于HDFS的分布式文件系统存储访问能力,分别提供基于JDBC/SQL的数据库访问接口以及HDFS访问接口。综合分析云计算软件平台可提供对HDFS、数据立方数据的
23、访问,并提供MapReduce编程模型和接口、以及非MapReduce模型的编程接口,以及用于实现并行计算任务负载均衡和服务器单点失效恢复的Zookeeper。第三层是智慧交通云平台中的数据层,包括原始交管数据、索引数据、用于分析的中间数据、以及系统配置数据等。其中,原始交管数据、索引数据等海量数据将存储在南京公安局云存储系统的HDFS分布式文件系统中,用HDFS接口进行存储和访问处理;而其它用于分析的中间数据等数据量不大、但处理响应性能要求较高的数据,将存储在云存储系统的关系数据库系统中,用JDBC/SQL进行存储和访问处理。第四层是交管数据处理软件层,主要完成智慧交通云平台所需要提供的诸多
24、功能,包括实时监控、报警监控、车辆轨迹查询与回放、电子地图、报警管理、布控管理、设备管理、事件检测报警、流量统计和分析、系统管理等功能。最上层是客户端用户界面软件,主要供用户查询和监视相关的数据信息,除了事件检测报警不需要用户界面外,其它部分都需要实现对应的用户界面。1.3 系统基本功能与处理方案1.3.1 交管卡口数据入库功能与处理方案交管卡口数据入库系统总架构如图:图表 3 智慧交通云平台架构智慧交通云平台通过实时卡口数据入库系统接入采集层的交管数据,数据分配进入负载均衡机,负载均衡机根据集群各节点负载情况,动态分配交管数据到各存储处理机, 进行报警检测、建立索引等处理, 同时将交管数据存
25、入分步式存储系统。负载均衡机功能监控所集群机器负载情况,动态分配交管数据。监控所有集群机器,如果发现问题,那么就把分配给这台机器的交管数据重新分配到其他机器,去除单点故障,提高系统可靠性。负载均衡机采用Paxos 算法解决一致性问题,集群在某一时刻只有一个Master负责均衡能力,当Master宕机后,其他节点重新选举Master。保证负载均衡机不会存在单点问题,集群机器一致性。实时业务对于实时性要求高的业务应用,如:实时监控、实时报警,走实时专道。1.3.2 数据存储功能与处理方案数据存储处理总架如图:图表 4 数据存储处理架构数据存储系统提供如下功能:交管数据处理:接收来自数据汇总和数据入
26、库系统的交管数据, 索引模块实时生成索引,以提高查询速度。生成的索引存储到HDFS中,以供查询交管数据使用。专题业务分析,通过MapReduce并行计算,同期提取业务数据,将结果分存两路,一路存入数据立方(DataCube)或日志详单存储, 一路存入关系型数据库。报警数据处理智慧交通云平台对接收到的实时交管卡口数据进行计算,以判断这辆车有没有符合报警条件。如果符合,会对报警信息入库,并同时通过对外实时报警的接口,将报警信息迅速展示到用户界面上。1.3.3 查询分析功能与处理方案交管数据查询构架如图:图表 5 交管卡口数据接入当客户发起请求后, 客户端把请求发向查询接口服务器,查询接口服务器解析
27、查询请求,后向Master任务调度机发送查询任务执行命令;Master回应执行命令节点信息,查询服务器根据节点信息将查询命令发向查询计算模块,进行具体查询操作,将查询结果返回给客户端,呈现给用户。1.4 系统互联与管理1.4.1 组网方案组网方案如图:图表 6组网方案我司可向公安数据中心申请VPN或公网IP服务,如果系统出故障,可以保障第一时间远程排查。1.4.2 网络管理1.4.2.1 服务器间网络安全检查系统自管理通过启用网络安全检查进程(netinspect),定期检查整个系统的网络状况,并上报各服务模块网络流量信息,在终端形成网络拓扑图,实时在界面呈现各节点网络状态,管理员也能及时了解
28、,各服务模块的网络流量机承载的负荷。若出现网络故障,netinspect进程实时上报故障情况,在网络拓扑图上以报警方式提示,或以短信的方式提示,便于管理员及时发现问题,并恢复网络故障,确保系统在安全的网络环境下运行。1.4.2.2 服务模块进程监控管理系统自管理通过启用服务模块运行状态检查进程(proinspect),定期检查整个系统的服务模块进程运行状况,并上报各服务模块进程的运行状态信息,在终端将运行的进程的状态以表格形式显示,定时更新进程的运行状态信息。通过它管理员也能及时了解,各服务模块的进程运行负荷。若在固定的时间内没有更新,视为进程运行故障,启动主机代理自动恢复故障进程,保障各服务
29、模块进程持续稳定的运行的状态。1.4.2.3 系统性能监控管理系统自管理通过启用服务模块性能检查进程(serverinspect),定期检查整个系统的各服务器性能指标,包括CPU开销、内存占用、IO峰值、网络流量、连接数等。并上报各服务性能指标,在终端形成拓扑图,实时在界面呈现各节点服务器性能状态,管理员也能及时了解,各服务节点处理性能及资源开销。若性能持续高负荷,拓扑图上以报警方式提示,或以短信的方式提示,便于管理员及时发现问题,查找问题的来源或重新评估服务器配置情况,为系统稳定运行提供一个确实可靠的标准。1.4.2.4 系统日志分析处理系统各服务模块在运行期间写日志文件,将进程的模块编号、
30、服务器的IP、出错页码等日志的状态(错误、告警、提示)等级别的信息保存磁盘文件,供工程师来分析系统运行状态。同时日志分析进程(loganalyse)分析日志文件,将重要的日志信息,进行对比、分析并汇总后,生产统一格式的日志信息,提取出来,写入的数据库表中,终端管理通过查询界面来来显示,能及时了解到系统的运行的状态。1.4.2.5 系统运行状态及报警处理系统运行报警分为以下几种:服务器运行状态报警服务器网络状态报警服务模块进程报警日志模块状态报警1.4.3 系统安全1.4.3.1 网络安全为保障整个系统稳定运行,首先要保障系统在网络方面是安全的。从硬件、软件方面做相应的安全措施。硬件:所有的网络
31、设备都要1+1 冗余配置,涉及以下网络硬件设备冗余配置以太网100M/ 1000M网卡以太网网络交换设备光纤网络接口FC/HBASAN光纤网络交换机软件:在整个系统上部署防火墙软件、及自产的安全管理管理软件模块来保障系统平稳运行。1.5 系统可靠性与扩展性1.5.1 系统可靠性 HDFS可靠性概述:HDFS包括元数据节点(Namenode)和数据节点(Datanode),Namenode是一个中心服务器,负责管理文件系统的Namespace和客户端对文件的访问。,Datanode在集群中一般是一个节点一个,Datanode是文件系统中真正存储数据的地方。DataNode所在机器挂了怎么办? H
32、DFS(Hadoop Distributed File System)默认的最基本的存储单位是64M的数据块(block)。 一个文件对应的所有BLOCK全部按照一定的部署策略存在于DataNode上,文件的所有block为了容错都会被复制(一般为3份),每个文件的block大小和replication因子都是可配置的。Datanode每3分钟向Namenode发送心跳,如果10分钟datanode没有向Namenode发送心跳,则Namenode认为该Datanode已经dead,Namenode将取出该Datanode上对应的block,对其进行复制。 Namenode挂了怎么办?Name
33、node主控服务器,为了避免主节点失效而影响整个系统正常工作,我们采用基于HDFS的改进方案Avatar,同时可开启两个Namenode,主Namenode和secondNamenode,实际工作的只有主Namenode。主Namenode将所有关于文件和目录的操作记录都会写入日志,并定时序列化到本地做镜像,并且保存到本地的NFS服务器,同时secondNamenode读取主Namenode所在NFS服务器的日志并对镜像日志做CheckPoint。故障后,secondNamenode升级为Namenode,通过镜像数据和文件日志迅速恢复系统。数据服务器可通过分布式协同服务机制得知关于主控服务器
34、的更迭情况,然后向新的主控注册并继续发送心跳。 数据立方可靠性概述:数据立方系统由数据立方集群和ZooKeeper集群组成。数据立方的可靠性由其自身的ZooKeeper机制保证。数据立方包括子服务器群和Master主服务器构成。Master负责管理Hregion。物理上,一张表是被拆成多个块,一张完整的表格是保存在多个Hregion上面的。master挂掉怎么办?由于master只维护表和region的元数据,因此master下线短时间内对整个数据立方集群没有影响,master保存的信息全是可以冗余信息(都可以从系统其它地方收集到或者计算出来),因此,启动数据立方时可以再启动一个备用的mast
35、er,实际工作的只有主master,当主master所在节点宕机,会自动切换到备用master所在节点。Hregionserver挂掉怎么办?物理上,表格分为多个Region一张表是被拆成多个块,一张完整的表格是保存在多个Hregionserver上面的。并且分布在多台Hregionserver中,物理上所有数据存储在Hadoop的HDFS上,由一些子表服务器来提供数据服务,提供服务时,子表先查HMemcache,如果没有,再查HDFS上的HStore,由HDFS来保证数据的可靠性。如果丢失Region的数据所在节点的datanode宕机,HDFS会自动映射到其他节点,从而保证Region数据
36、的可靠性。ZooKeeper挂掉怎么办?Zookeeper分为2个部分:服务器端和客户端。启动Zookeeper服务器集群环境后,多个Zookeeper服务器在工作前会选举出一个Leader,在接下来的工作中这个被选举出来的Leader死了,而剩下的Zookeeper服务器会知道这个Leader死掉了,在活着的Zookeeper集群中会继续选出一个Leader,选举出leader的目的是为了可以在分布式的环境中保证数据的一致性。MapReduce可靠性概述:MapReduce整体上可以分为这么几条执行的线索,JobTracker与JobTracker是一个master服务,软件启动之后JobT
37、racker接收job,负责调度job的每一个子任务task运行于TaskTracker上,并监控它们,如果发现有失败的task就重新运行它。一般情况应该把JobTracker部署在单独的机器上。TaskTracker是运行于多个节点上的slaver服务。TaskTracker主动与JobTracker通信,接收作业,并负责直接执行每一个任务。TaskTracker都需要运行在HDFS的DataNode上,JobTracker0挂掉怎么办?在系统启动时同时启动备份JobTracker1节点,当JobTracker0节点宕机时,ZooKeeper会在其上启动JobTracker进程替代JobTr
38、acker0节点,虚拟IP会指向此节点,TaskTracker会注册到此节点上,未完成的MapReduce作业会被ZooKeeper调度到此节点上重新执行。TaskTracker挂掉怎么办?JobTracker是一个master服务,软件启动之后JobTracker接收job,负责调度job的每一个子任务task运行于TaskTracker上,并监控它们,如果发现有失败的task就重新运行它。并且将其负责的task分配给其他TaskTracker上。1.5.2 系统扩展性已有的Hadoop集群规模Hadoop是一个相当有弹性和扩展性的平台,它既可以在成千上万的机器上跑,也可以在很小规模上运行。
39、目前最大的Hadoop集群有四千台机器。 Hadoop扩展优势:与其它分布式系统相比,使用Hadoop的好处在于它的水平的可扩展性,在少量结点上,用Hadoop处理有限的数据时,不能展示Hadoop的性能,因为开始Hadoop程序相关的代价比较高,其它并行/分布程序方式,比如MPI (Message Passing Interface)可能在2台,4台或许10多台计算机上有更好的性能,尽管在少量机器上协同工作在这种系统上也许会取得更好的性能,但这种为性能所要付出的努力是非线性的增长。用其它分布式框架所写的程序在从十台机器的级别到成百上千台机器需要大量的重构工作,这也许要程序重写几次,并且其它框
40、的基础元素会限制应用的规模大小。但是特别设计的Hadoop有着水平的可扩展性,一个Hadoop程序写完后,在10个结点上运行,如果迁徙到更大的集群上运行,几乎不需要做什么工作, Hadoop平台会管理数据和硬件资源并提供与可用资源成比例的可靠性能。Hadoop扩展方法:数据立方集群具备线性扩展功能,只需要将配置好的服务子节点加入到集群中。MapReduce集群具备线性扩展功能,只需要将配置好的TaskTracker节点加入到集群中,JobTracker节点就会将Map或Reduce任务分配给此节点处理。HDFS具备线性扩展功能,只需要将配置好的DataNode节点加入到集群中,并且在集群空闲时
41、执行balancer工具以平衡集群中DataNode的数据块负载。1.6 系统设计性能1.6.1 交管数据流量处理能力交管数据集群完全采用分布式实现,支持线性扩展。 对于全省总量300万条/天的实时入库数据和大量的历史数据来说,需要34台处理机。以下是各部分处理能力统计: l 交管数据存储查询服务器配置: 8核CPU2,主频2.3GHz,内存32G,硬盘82T SATA处理能力:折合交管数据入库流量 500条/s/台l 应用分析服务器配置: 8核CPU2,主频2.3GHz,内存16G,硬盘2300G SAS处理能力:折合处理并发访问量500次/s/台1.6.2 数据存储能力原始交管数据存储采用
42、云存储平台,分布式文件系统存储服务。性能指标:l 存储量指标单系统应支持PB级存储容量。l 吞吐量指标吞吐量是指在没有帧丢失的情况下,设备能够接受的最大速率。吞吐量根据应用系统读写方式和应用系统读取存储内容大小分成四个指标。分布式文件存储系统按照32个节点并发500个用户计算,单节点8块2T大小的硬盘情况下,每个节点指标具体内容如下表所示:表8分布式文件存储系统吞吐量指标编号读写方式存储内容大小平均吞吐量指标(MBps)1100%读1GB602100%写1GB303100%读100KB304100%写100KB15图表 7 分布式文件存储系统吞吐量指标l 系统响应时间指标千兆网络环境下,局域网
43、客户端从分布式文件存储系统中读取4096字节存储内容的响应时间应不高于50ms。交管数据存储采用HDFS性能指标,如下:l 数据读取性能:4080MB/s节点;l 数据规模:10PB规模;l 数据负载均衡时间:可依据流量配置而确定;l 集群重新启动时间(10PB规模):分钟级别;1.6.3 查询分析计算性能 对任何实时分析操作的反应时间小于10秒; 查询、统计操作的首次响应时延小于1秒; 并发操作终端数大于30个 ; 基于交管数据的统计,记录5000万条以内,30秒可以统计完成。云技术方案建议书 第85页系统设计实施与关键技术方法2 系统设计实施与关键技术方法2.1 系统软硬件平台系统软件结构
44、如图:图表 8 系统软件结构系统的物理硬件采用低端的x86 PC服务器,操作系统采用RedHat Linux。2.2 数据处理流程数据汇总上报处理流程如图:图表 9 数据汇总上报处理流程实时数据入库流程如图: 图表 10 实时数据入库流程2.3 数据存储子系统 2.3.1 海量数据分布式数据存储构架 云计算是一种超级的计算模式,可以把网络中的计算机虚拟为一个资源池,将所有的计算资源集中起来,并用特定软件实现自动管理,使得各种计算资源可以协同工作,这就使得处理数量巨大的数据成为了可能。 基于云计算的海量数据存储模型,是依据云计算的核心计算模式MapReduce,并依托实现了MapReduce 计
45、算模式的开源分布式并行编程框架Hadoop,将存储模型和云计算结合在一起,实现海量数据的分布式存储。 MapReduce 是云计算的核心计算模式,是一种分布式运算技术,也是简化的分布式编程模式,用于解决问题的程序开发模型,也是开发人员拆解问题的方法。MapReduce 模式的主要思想是将自动分割要执行的问题,拆解成Map(映射)和Reduce(化简)的方式。在数据被分割后通过Map 函数的程序将数据映射成不同的区块,分配给计算机集群处理达到分布式运算的效果,在通过Reduce 函数的程序将结果汇整,从而输出开发者需要的结果。 MapReduce 借鉴了函数式程序设计语言的设计思想,其软件实现是
46、指定一个Map 函数,把键值对(key/value)映射成新的键值对(key/value),形成一系列中间结果形式的key/value 对,然后把它们传给Reduce(规约)函数,把具有相同中间形式key 的value 合并在一起。Map 和Reduce 函数具有一定的关联性。MapReduce流程如图所示:图表 11 分布式计算流程 Hadoop 是一个实现了MapReduce 计算模型的开源分布式并行编程框架,程序员可以借助Hadoop 编写程序,将所编写的程序运行于计算机集群上,从而实现对海量数据的处理。此外,Hadoop 还提供一个分布式文件系统(HDFS)用来将数据存储或部署到各个计算节点上。借助Hadoop 框架及云计算核心技术MapRedu