摘 要:本文主要针对大数据的概念与特点、交通行业大数据发展现状以及大数据在交通行业发展的浅见进行简要分析。
关键词:智能电网;交通运输;大数据处理技术
中图分类号:C35 文献标识码: A
一、大数据的概念与特点
顾名思义,大数据即一个体量特别大的数据集,大到无法使用传统的数据处理工具、技术对其进行分析、加工、操作。而大数据技术,就是对大数据的处理技术的集合。可以说,大数据兴起并非科技的突变,而是随着人类社会结构化、半结构化、非结构化数据的急速增长应对而生的技术进步。大数据的特色之一是体量成级数增长。由于互联网技术逐渐渗透人类生活的方方面面、以“物联网”为方向的信息采集技术的逐渐普及以及包括“4G”在内的网络传输技术的迅猛发展,在全社会,包括交通运输行业,人类所拥有的数据量及其增速已经远远超过传统信息技术预设的处理极限。限于科技发展的规律与速度,或者是人类智能体量的局限,信息技术专家们提出以“云计算”概念为核心的的一系列数据分布式处理技术作为阶段性替代方案,以适应现阶段的信息爆炸。
大数据技术与传统信息处理技术有如下不同:使用分布式技术实现海量数据的处理。现代社会,“人类存储信息量的增长速度比世界经济的增长速度快4倍”,“大约每三年就能增长一倍”。为了解决这一问题,分布式技术成为信息处理的必然选择。早期的信息处理技术通过固定的数据存储设备、运算服务器实现信息化;随着数据量以及运算需求的增加,发展出部署集中的集群的信息存储与处理方式,一定程度上扩展了使用范围;当数据量进一步增长,受益于网络通信技术的升级换代和互联网的飞速发展,“云计算”技术相应而生,通过将分散于各地的存储、处理设备,实现可与巨型计算机媲美的海量数据处理能力。
大数据技术善于由结果推断模型。不同于传统的智能化技术,需要完善地建立数据模型,通过条件,推导结果。大数据技术着眼结果于海量数据,通过大量的事实总结规律,形成知识。传统的建模实现智能化技术,一旦结果出现异常,就需要反溯,修订模型,重新进行实践。而大数据技术,则只通过对相关性的结果进行比较,便能总结归纳相关原理。大数据技术着眼于动态,而不是静态。传统信息处理技术着眼于当前数据的使用,业务办理、行业监控,数据一旦使用,则降低或失去其实用价值,历史数据需要人工的比对、判断。大数据技术着眼于一段时间或全部时间上的动态发展数据,着眼于动态数据之间的联系与发展规律,大数据技术长于整体的运算效率,而非个体的精确追踪。由于数据处理能力的有限性,传统的信息化技术对于有限的样本进行分析与统计,更关注于奇异数值并加以分析,着力于对个体样本的精确追踪。而当大数据处理成为可能,数据的总体成为一个独立样本,一些奇异值由于发生概率太小,完全可以忽略,数据整体的运算效率成为重要指标。
如同哲学上的量变引起质变,大数据技术正是随着信息化数据的不断增长而产生并从根本上改变人对于数据存储、应用的理解与认识。同时随着数年的演进,大数据技术也正在逐步走向成熟。
二、交通行业大数据发展现状
交通行业是天然的大数据应用行业。传统的静态数据并非大数据,如路网的基础信息,户、车、人基本信息,这些数据随着产业增长而逐步增长,一直在传统信息处理技术预设的限度之内。但随着互联网与产业结合的不断升级、物联网―――车联网的快速兴起,3G、4G无线网络的普及,行业数据量已经开始成级数增长。目前交通运输行业大数据来源主要在3个方面:
基于互联网的公众出行服务数据,如大运输联网、网上售票、城市公交刷卡、公众在线交通路线查询、网购物流数据等。
基于行业运营企业生产监管数据,如货运源头称重数据,货运、危险品运输电子运单数据,客运进出站报班及例检数据,营运车辆维修检测数据,邮政包裹数据等。
基于物联网、车联网的终端设备传感器采集数据,包括车辆相关动态数据:GPS位置信息、车辆能耗、车辆技术状况信息,路网监控信息:卡口视频监测、基于传感器的路况监测、路上动态称重设备、桥梁监测GPS等。
车流量监控数据,笔者曾参与河南省新乡市动态称重系统建设项目,仅一个信息采集点,2013年11月平均每天采集14000辆车左右,包括结构化数据与照片信息,每天产生的数据量是1791MB。
三、大数据实时处理技术
随着大数据时代的来临,各种应对大数据处理的解决方案应时代而生,7 年前,雅虎创建了一个用于管理、存储和分析大量数据的分布式计算平台 Hadoop,它作为一个批处理系统具有吞吐量大、自动容错等优点,目前在海量数据处理方面已得到了广泛应用。但是,Hadoop 本身存在的缺点是不能有效适应实时数据处理需求,为了克服该局限,一些实时处理平台如 S4, Storm 等随之产生了,他们在处理不间断的流式数据方面有较大的优势,下面将介绍和分析目前比较流行的大数据处理平台。
1、Hadoop
Hadoop 是一个由 Apache 基金会开发的分布式系统基础架构 [10] ,允许用户在不了解分布式底层细节的情况下,开发分布式应用程序。Hadoop 主要由分布式文件系统(Hadoop Distributed File System,HDFS)和 MapReduce 计算框架两部分组成。
HDFS 结构如图 1 所示,三类节点 Namenode,Datanode,Client 之间的通信都是建立在 TCP/IP 的基础之上的。Client 执行读或写操作时首先在本机临时文件夹中缓存数据,当缓冲数据块达到设定的Block 值(默认 64M) ,Client 通知 Namenode,Namenode 响应 Client 的 RPC 请求,将新文件名插入到分布式文件系统结构层次中,并在 Datanode 中找到存放该数据的 Block,同时将该 Datanode 及对应的数据块信息告诉 Client,Client 便将数据块写入指定的数据节点。HDFS 有着高容错性的特点,可以部署在低廉的(low-cost)硬件上,并且能提供高传输率(high throughput)来访问应用程序的数据。
图 1 HDFS 结构图
MapReduce 是一种并行处理模型,主要有两个处理步骤:map 和 reduce 。
Map 端处理流程如下:计算框架先将要处理的数据进行分片,方便 map 任务处理。分片完毕后,多台机器就可以同时进行 map 工作。map 对每条记录的处理结果以的形式输出中间结果,map 输出的结果会暂且放在一个环形内存缓冲区中,当该缓冲区快要溢出时,会在本地文件系统中创建一个溢出文件,将该缓冲区中的数据写入这个文件。写入磁盘之前,线程根据 reduce 任务个数生成相同数量的分区。当 map 任务输出记录时,会产生溢出文件,这时需将这些文件合并。文件不断排序归并后,最后生成一个已分区且有序的数据文件。最后将相应分区中的数据拷贝给相应的 reduce 任务。
Reduce 端处理流程如下:Reduce 会接收到不同 map 任务传来的数据,如果 reduce 端接受的数据量相当小,则直接存储在内存中,如果数据量超过了该缓冲区大小的一定比例,则对数据合并后溢写到磁盘中。随着溢写文件的增多,后台线程会将它们合并成一个更大的有序的文件,然后交给 reduce 函数处理,reduce 函数安装用户定义的业务逻辑对数据进行处理并输出结果。
Hadoop 在本质上是一个批处理系统。数据被引入 Hadoop 文件系统 (HDFS) 并分发到各个节点进行处理。最后将处理结果汇总,生成的结果文件存放在 HDFS 上。
2、Storm
Storm 是 Twitter 开源的分布式实时计算系统 [8] ,Storm 具有高容错性,水平扩展性好,快速,可靠处理消息的优点。Storm 的核心概念是“流(stream)”,流是一个无限的元组序列。Strom 为流转换提供两个基本组件:“Spouts”和“Bolts”。Spout 是一个输入流组件,Spout 将数据传递给另一个组件(Bolt) 。Bolt 执行任务并创建新的流作为下一个 Bolt 的输入流。 整个过程就是一个 “topology”。
Strom 集群有主要有两类节点:主节点和工作节点。主节点上运行一个叫做“Nimbus”的守护进程,它负责在集群分发代码、 分配任务和故障监测。 而每个工作节点运行一个叫做“Supervisor”的守护进程。Supervisor 监听分配给它任务的机器,根据 Nimbus 的委派在必要时启动和关闭工作进程,每个工作进程执行 topology 的一个子集,一个 topology 由很多运行在机器上的工作进程组成。
Nimbus 和 Supervisors 之间所有的协调工作是通过一个 Zookeeper 集群,Nimbus 的守护进程和Supervisors 守护进程的状态维持在 Zookeeper 中或保存在本地磁盘上。这意味着 Nimbus 或 Supervisors进程杀掉,而不需要做备份,这种设计结构使得 Storm 集群具有很高的稳定性。
3、S4
S4(Simple Scalable Streaming System)是 Yahoo 的一个开源流计算平台,它是一个通用的、分布式的、可扩展性良好、具有分区容错能力、支持插件的分布式流计算平台。S4 将流的处理分为多个流事件 Process Element(PE) ,每个 PE 唯一处理一种流事件。S4 将用户定制的 PE 放在名为 Processing Element Container(PEC)的容器中。PEC 加上通信处理模块就形成了逻辑主机 Processing Node(PN) 。PN 负责监听事件,PEC 接收源 event,event 经一系列 PE 处理后,在通信层 Communication Layer的协助下分发事件或输出事件处理结果。在分发事件的过程中,S4 会通过 hash 函数,将事件路由到目标 PN 上,这个 hash 函数作用于事件的所有已知属性值上。通信层有“集群管理”,“故障恢复到备用节点”,“逻辑节点到物理节点映射”的作用。同时通信层还使用一个插件式的架构来选择网络协议,使用 zookeeper 在 S4 集群节点之间做一致性协作。
四、大数据在交通行业拓展的困境
1、行业信息化整体水平较低、数据的采集与整合困难
目前交通运输行业信息化、智能化发展非常不均衡,广大西部地区缺少信息化基础,信息系统应用效果差,数据采集困难。信息化建设较早的省份,由于信息化建设缺乏统一规划与顶层设计,系统建设、使用单位均不相同,交通运输主管机构与各二级单位、信息化主管部门与业务部门分头建设业务系统,系统技术架构差距大,基层单位上级机构多头管理,造成数据来源不统一,信息孤岛现象严重。各省信息化建设与应用水平的差距同样造成部级数据整合困难,无法发挥实际的应用价值。
2、缺乏工作规范与要求,数据应用机制困难
交通运输管理机构人员信息化水平差距较大,系统用户缺乏应有的信息化思想,传统的办公方式与习惯难以改变。政府管理机构没有针对信息化应用与数据的采集应用形成上下联动,奖惩结合的管理机制。信息化应用游离于业务办理之外,信息管理部门与业务部门各管一摊,无法真正将实际业务实现在线办理,真正提高办公效率创造信息价值。行业主管部门缺乏对行业企业生产监管数据进行采集的法律法规,也没有面向企业提供数据服务,既没有通过信息化手段对行业生产状况进行全面掌握,也无法通过信息服务促进产业升级和变革。
3、行业从业人员信息化意识不强,大数据应用思路缺乏
交通运输行业主管部门领导对数据指标价值与数据应用方式缺乏认识,一些信息化规划、项目规划不接地气,系统重建设轻实用,实际应用价值不高,数据采集需求无法得到贯彻。如交通运输部部省联网项目,采集了全国绝大多数省份的户车人基础数据,但是既没有制定政策法规,保证数据的更新与同步,也没有进行数据指标的价值分析,实现真正有价值的应用,造成后期维护困难,数据逐渐陈旧,实用价值迅速流失。此外,全国各省、各地交通运输行业信息化发展不均衡,部分地区信息化基础设施较为落后,整体信息化水平有待加强。
五、大数据在交通行业发展的浅见
1、积极立法,确立数据采集与应用的重要性
通过研究并制定政策法规,面向部、省、市、县各级交通主管部门及相关企业,将数据采集、整合的责任与义务进行明确规定,明确哪些信息化工作该哪级机构做,该哪些部门做,同时明确科技信息化主管部门在信息化建设中的地位并给予相应的监察、评定的权利,对行业企业明确信息化建设与数据采集方面的社会责任。另外,对交通运输行业数据进行全面的梳理,数据保密性与应用价值进行分级,对数据的采集与应用进行立法,明确不同级别的管理机构可以对哪些数据自行进行分析和利用,那些数据可以开放给社会或企业使用,真正实现大数据的应用价值。
2、加快体制改革,设立数据采集与信息化和单位考评相结合的制度
结合国家行政体制改革,进一步改变交通运输行业信息化项目建设传统的上级规划、立项、投资、监管、评审一体化管理模式,实现规划与立项、资金使用与审计、项目监管与后评审的权责分离,让信息化项目建设实际落地,上级单位更注重资金使用的控制与系统应用效果的后评审。尽快制定政策,将指定数据指标的采集和上报纳入行业管理规定;通过体制改革,设立数据上报与信息化应用水平考核制度并实现常态化,同时实现数据上报制度与行业统计工作的全面结合,改变传统的统计人工上报模式,用信息化数据支撑行业统计。考核制度包括3个层面:管理机构对企业考核;单位领导、信息化主管部门对业务部门的考核;上级主管部门对下级单位的考核。
3、加快信息化发展步伐,通过示范指导,引导大数据技术的引入与发展
在交通运输行业信息化规划与设计中,广泛引入云计算等大数据处理技术,选择试点单位,建设应用示范项目,总结大数据在交通运输行业的应用方式方法与使用价值,对具有适用性的项目进行全国推广,引导大数据技术的不断发展。
结束语
大数据时代随着全国交通运输行业各机构、各部门、各企业数据量的迅速增长,以及IT企业交通运输相关数据的迅速增长,逐渐在我们面前显现,发展大数据技术,积极应对、抓住下一次信息化变革、产业浪潮的机遇,是实现交通运输行业产业变革、结构优化、服务社会与公众能力进一步提升的关键。