智慧客运项目解决方案说明书.docx
智慧客运项目解决方案XX科技股份有限公司制目录一、项目存在问题及需解决问题31. 存在问题32. 需解决问题5二、解决方案81 .解决方案架构82 .关键技术10(1) Hadoop10(2) SpringMVC10(3) MyBatis10(4) Echarts10(5) MySQ1.10(6) Hive11(7) HBASE11(8) Zookeeper12(9) F1.ume12三、开发范围121 .数据生产122 .数据采集/消费123 .数据分析134 .数据展示14一、项目存在问题及需解决问题1.存在问题1,行业标准不统一国内由于各个地区的经济发展不平衡,在实施智慧客运系统项目时,国家并没有统一的行业标准,所以造成许多地区的智慧客运系统相对独立,衔接和配合度不强。在智慧客运中大数据的应用需要依靠前端传感器进行数据采集,由于铺设的前端传感器来自于不同的生产企业,这些行业并没有统一的接口标准,这就造成即使同一个城市的不同系统也很难进行衔接和配合。在智慧客运的大数据应用中,数据采集是非常重要的环节,由于不统一的标准会严重加大交通数据获取难度,从而妨碍交通流的分析与预测。2、难以确保智慧客运系统基础设施的稳定性与可靠性智慧客运系统的整合度和复杂度越来越高,然而其健壮性却没有随之提高,因此系统整体的信息安全风险随之增大。智慧客运系统往往需要大量的服务器和前端设备,包括信号控制、交通流量采集、交通诱导、电子警察、卡口等子系统,数据要和上级交通管理平台、下级交通管理子平台、公安业务集成平台等系统相连。系统具有流程复杂、业务系统众多、客户端分散等一系列特点。数据中心需要竭尽全力保证业务系统的正常运行。但是随着系统规模不断扩大,前端设备点位增加,设备故障点也呈几何级数增长,管理人员必须保证这些设备正常运行。在数据传输过程中,智慧客运系统中硬件设备因功能滞后或老化而导致传输速率下降以及网络延迟,这些都可能引起数据泄露以及丢失,严重影响大数据安全。3、难以确保数据源的质量数据的质量主要是指数据的真实性或可信度,具体可以分为数据出处和数据失真两个层面。智慧客运应用的数据主要来自于系统中的传感器和监控等设备收集的数据,大数据中心需要高质量的数据源,而目前设备长时间运行的性能得不到保证,数据质量不高限制了智慧客运业务高水平的扩展应用。现代化的交通诱导和交通信号控制需要实时准确的交通流量数据以供进行交通状态判断以及短时交通预测使用。而由于目前系统健壮性不足,难以自行判断数据质量,从而使得交通诱导和信号控制系统不能发挥预期效用,最后影响了整体智慧客运系统的投资价值。4、增加隐私泄露风险巨量的交通数据包含了个人的一些敏感信息。这些数据集中的存储增加了泄露的风险。一旦遭到非法使用,这将引起重大后果。无论从道德层面还是法律层面来看,都将对许多牵涉的用户造成影响。另外,由于数据量较大,对敏感数据的所有权和使用权并没有界定的明确标准,许多基于大数据的分析并未考虑其中涉及的个人隐私安全问题。5、增加信息安全风险智慧客运中的大数据应用是利用道路和车柄等配置的前端设备进行交通数据采集,并从超大量数据中分析出价值信息的过程。智慧客运中大数据的收集、传输、存储、分析过程都是依靠云计算平台和互联网传输进行的,而这个过程便增加了信息安全的风险。一方面,大数据所包含的复杂、敏感数据会引起更多潜在的攻击。另一方面,由于大量数据汇集在一起,一旦黑客成功攻击就会引起大量敏感数据的泄露,造成巨大损失,增加风险率。而且由于黑客一次性可以得到更多数据,这相当于降低了黑客攻击的成本。此外,智慧客运中许多数据传输本身就是借助于移动智能设备的采集和传输,如果这些设备感染具有监控和数据收集功能的病常,这些敏感信息一旦被利用,不法组织便可能追踪到个人的实时位置以及监控个人的行为习惯等其他机密,这将增加个人信息安全风险,提高安全事故风险等级。6、威胁现有的存储和安防措施智慧客运系统应用大数据技术时,必然造成大量数据的汇集。如此巨量受杂的数据需要存储在更高安全管理标准的数据中心。由于原有交通系统中的数据存储中心很有可能并不符合规定,这便对现有的存储环境产生了威胁。另外,巨量的数据也会增加防护难度,影响现有安全防护措施的运行。安全防护手段更新升级的速度必须与数据增长的速度相匹配,一旦安全防护措施跟不上数据增长的速度,便会引起大数据安全防护漏洞。另外智慧客运系统是一个庞大的.复杂系统,大数据应用需要各个子系统的衔接和配合。这必然需要许多工作人员共同参与,由于大数据包含许多非结构化数据,若使每位用户对应访问特定的信息子集,确保敏感信息的隔离,这便意味着需要保护数据的加密方案将会是一个新的挑战。数据的访问控制需要更谨慎,以确保用户只能访问授权其访问的数据。2.需解决问题1、加强交通平台资源整合,推进数据标准化交通系统是庞大而复杂的系统,且覆羞范围非常广,各个交通平台衔接度不够。为了解决大数据应用在智慧客运中的行业不统一问题,首先国家应该推出交通平台的标准化措施,规范每个交通平台的统一化布局,包括交通系统物理层的每一个硬件设施的标准化接口以及交通系统软件层的每一个信息系统的标准化接口,实现各个平台从硬件到软件的互联性和兼容性,进一步推动交通信息化体系综合化和立体化。这样才可以为智慧客运中的大数据应用提供资源共享综合平台。此外,在实现跨部门、跨地区的交通互联共享平台的基础上,我们应该进一步规范交通系统的数据标准化,构建数据标准化体系,实现综合交通平台的数据存储。2、加强交通大数据应用基础设施建设基础设施对交通大数据的信息安全的影响不容忽视。基础设施作为智慧客运系统的物理层结构基础,一旦发生损坏或者出现问题,将很容易增加信息泄露或丢失的风险。因此,智慧客运中的基础设施建设至关重要,应该加强交通大数据应用基础设施建设。加强交通大数据应用基础设施建设主要包括:及时对前端硬件设备进行更新和维护,应对智慧客运系统中的传输信息的网络线路以及传感器和监控等硬件设备进行定期的查验、维护和更新,严防因为基础设施的损坏或者老化等问题而造成信息数据的泄露或丢失;为了应对突发事件,智慧客运系统应该制定相对应的应急措施,以便当突发事件发生时,智慧客运系统能够保证继续安全和运行,从而确保信息数据的安全有效。3、严格控制智慧客运中的数据真实度大数据技术上有一个普遍观点认为数据可以说明一切,数据自身就是事实。大数据的核心价值在于通过对数据的分析挖掘,提炼价值信息并提供预测以及决策。大数据应用价值是建立在真实可靠的数据基础上的,一旦系统采集的数据本身存在错误,那么经过分析挖掘的预测以及决策非但不存在价值,而且会因为错误的决策进而造成损失与危害。因此,智慧客运系统数据采集时,必须通过严格的监控措施以及测试手段确保数据的真实性和可靠性。从数据源头开始把关,一旦发现虚假或恶意数据便及时剔除,同时可以利用稳健统计以及对抗式机器学习等方法减轻数据恶意插入的后果。此外,在智慧客运系统的数据采集过程中,为确保传输过程中数据不失真,应该尽可能臧少人为影响和干预。4、加强智慧客运系统中的大数据管理智慧客运系统中,除了在技术上保护大数据信息安全,安全管理制度也非常关键,它是确保智慧客运数据平台中的大数据信息安全的重要基础。只有使用科学的大数据管理方法,可以从海量的交通数据中获得真正价值,提升智慧客运系统的效率,降低各种安全风险。加强智慧客运系统中的大数据管理具体可以从以下4个方面进行:(D完善智慧客运中的大数据资产管理大数据作为智慧客运中的大数据应用的核心资产,许多安全问题都是在对数据进行管理的过程中。因此,在对其资产管理时,必须清楚定义数据元素,包含别名、格式以及其他特征标识;在对其进行描述时,必须列清该数据元素的信息来源和相关数据元素的其他信息;在对其使用信息的记录时,必须说明数据元素的产生和修改信息、访问历史记录、安全与访问控制信息等。()建立数据的安全系统智慧客运数据中心的防护系统需要设立全面的安全防护,包括设立入侵检测系统、安全审计、防火墙、抵抗拒绝服务攻击、网络防病毒系统、流量整形和控制等措施。此外,智慧客运的数据中心还应该通过使用识别管理技术,加密技术并结合其他主动安全管理技术进行监测和控制交通数据从使用到迁移、停用的整个过程。(3)做好智慧客运中的大数据信息安全风险评估智慧客运系统中的数据类型繁多,不同类型的数据都有相对应的风险等级。作为智慧客运的大数据中心应该将其进行分类,划分不同的安全风险等级。只有这样,才可以加强安全防范,更加明确安全风险治理目标,降低智慧客运数据泄露风险。(4)提高智慧客运系统的职员信息安全意识智慧客运系统的运行,除了大数据平台以及相关硬件设施之外还需要各个部门职员的配合,他们在智慧客运系统的数据安全中扮演着至关重要的角色。尤其作为大数据中心平台管理的职员更应该提高对数据安全威胁的辨别能力,知晓其所管理的数据的重要价值。同时,智慧客运建设的过程中,更应该积极对职员进行相关数据安全培训,提高职员在数据安全防护方面的知识水平和方法战略认识。二、解决方案1 .解决方案架构致掘展示片仟务M度与护HMuMNMIrIHtu<<收*分物发数黑在体笈图1解决方案架典图系统开发平台使用Hadoop大数据开发平台。Hadoop是一个高度可扩展的存储平台,可以存储和分发横跨数百个并行操作的廉价的服务器数据集群。能扩展到处理大量的数据,能提供成百上千TB的数据节点上运行的应用程序。HadooP能够有效的在几分钟内处理TB级的数据。相比关系型数据库管理系统更具有优势。它适用于任何规模的非结构化数据持续增长的企业,将帮助用户持续提高用户体跄。系统采用面向对象的软件设计方法,把整个系统看作是多个离散对象的组合。系统设计时,首先把业务流程分解成功能模块及其业务实体对象,然后根据业务流程分析对于这些业务实体对象的操作方法,形成业务处理对象,最后把各个功能模块关联起来,形成系统。软件设计是一个将需求转变为软件的过程,系统通过逐步求精使得设计陈述逐渐接近于源代码。系统程序采用MVC的设计思想,将展现逻辑、控制逻辑、业务处理逻辑分离。系统采用参数化的设计思想,定义和管理系统的实体及配置,调整实体以适应外部变化。系统采用J2EE技术保证程序逻辑实现的平台无关性,并便于安装部署。系统采用AJAX技术,提高客户操作的交互性,保证实际使用的易用性。系统采用echarts可视化框架实现数据展示。2 .关键技术(1) HadoopHadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。(2) SpringMVCSPringMVC:属于SPringFrame邛Ork的后续产品,已经融合在SpringWebF1.oW里面。Spring框架提供了构建Wcb应用程序的全功能MVC模块。(3) MyBatisMYBatis:是支持普通SQ1.查询,存储过程和高级映射的优秀持久层框架。MyBatiS消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XM1.或注解用于配置和原始映射,将接口和Java的POJOS(P1.ainO1.dJavaObjects,普通的JaVa对象)映射成数据库中的记录。(4) EchartsECharts是一款基于Javascript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。(5) MySQ1.MySQ1.是一个关系型数据库管理系统,由瑞典MySQ1.AB公司开发,属于OraCIe旗下产品。MySQ1.是最流行的关系型数据库管理系统之一,在WEB应用方面,VySQ1.是最好的RDBMS(Re1.ationa1.DatabaseManagementSystem,关系数据库管理系统)应用软件之一。MySQ1.是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQ1.所使用的SQ1.语言是用于访问数据库的最常用标准化语言。MySQ1.软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQ1.作为网站数据库。(6) Hivehive是基于Hadoop构建的一套数据仓库分析系统,它提供了丰富的SQ1.查询方式来分析存储在Hadoop分布式文件系统中的数据:可以将结构化的数据文件映射为一张数据库表,并提供完整的SQ1.查询功能;可以将SQ1.语句转换为MapReduce任务运行,通过自己的SQI.查询分析需要的内容,这套SQ1.简称HiveSQ1.,使不熟悉mapreduce的用户可以很方便地利用SQ1.语言查询、汇总和分析数据。而mapreduce开发人员可以把自己写的mapper和reducer作为插件来支持hive做更复杂的数据分析。它与关系型数据库的SQ1.略有不同,但支持了绝大多数的语句如DD1.、DM1.以及常见的聚合函数、连接查询、条件查询。它还提供了一系列的:具进行数据提取转化加载,用来存储、查询和分析存储在HadOOP中的大规模数据集,并支持UDF(User-DefinedFUnCtion)、UDAF(USer-DefneSAggregateFunction)和UDTF(User-DefinedTab1.e-GeneratingFunction),也可以实现对map和reduce函数的定制,为数据操作提供了良好的伸缩性和可扩展性。(7) HBASEHBase-HadoopDatabase,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBaSe技术可在廉价PCSerVer上搭建起大规模结构化存储集群。(8) ZookeeperZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是GOogIe的ChUbby一个开源的实现,是HadOOP和HbaSe的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。(9) F1.umeFIUme是C1.oUdera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,FIUme支持在日志系统中定制各类数据发送方,用于收集数据;同时,FIUme提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。三、开发范围1 .数据生产对于该模块的业务,即数据生产过程,一般并不会让你来进行操作,数据生产是一套完整且严密的体系,这样可以保证数据的安全性。但是如果涉及到项目的一体化方案的设计(数据的产生、存储、分析、展示),则必须清楚每一个环节是如何处理的,包括其中每个环境可能隐藏的问题;数据结构,数据内容可能出现的问题。2 .数据采集/消费数据采.集模块(消费),在企业中你要清楚流式数据采集框架f1.ume和kafka的定位是什么。我们在此需要将实时数据通过f1.ume采集到kafka然后供给给hbase消费。f1.ume:CIOUdera公司研发适合下游数据消费者不多的情况;适合数据安全性要求不高的操作;适合与Hadoop生态圈对接的操作。kafka:Iinkedin公司研发适合数据下游消费众多的情况;适合数据安全性要求较高的操作(支持rep1.ication);因此我们常用的一种模型是:线上数据一门Ume>kafka>f1.ume(根据情景增删该流程)>HDFS线上数据一>f1.ume>kafka>sparkstreaming实时流式处理消费存储模块流程图:图2消费存储模块流程图3 .数据分析我们的数据已经完整的采集到了HBaSe集群中,这次我们需要对采集到的数据进行分析,统计出我们想要的结果。注意,在分析的过程中,我们不一定会采取一个业务指标对应一个mapreduce-job的方式,如果情景允许,我们会采取一个mapreduce分析多个业务指标的方式来进行任务。分析模块流程图:图3分析模块流程图4 .数据展示数据展示模块流程图:图4联密展示模块流程图