一种基于大数据的智能交通数据分析系统的制作方法

文档序号:16887169发布日期:2019-02-15 22:44阅读:216来源:国知局
一种基于大数据的智能交通数据分析系统的制作方法

本发明属于智能交通控制系统领域,具体涉及一种基于大数据的数据分析系统。



背景技术:

随着物联网、移动互联网和城市智能交通系统的快速发展,交通数据量大大提升,进入了大数据时代。交通数据中包含大量有价值的数据,这些数据对智能交通行业的发展起到了巨大的推动作用。传统数据分析系统受资源的限制,运算效率低下,已无法满足大数据处理的需求。

因此,根据智能交通数据分析系统发展的方向,研发基于大数据分布式计算架构、分布式数据库等技术建立处理各种海量数据的智能交通数据分析系统具有重要的意义。



技术实现要素:

本发明所要解决的技术问题是针对传统数据分析方法的不足,提供一种基于大数据的智能交通数据分析系统,该系统具有海量数据存储、海量数据在线与离线分析等功能,以流量数据与卡口数据为基础,为城市智能交通提供运行状态、评价和配时推荐等重要信息。

本发明所要解决的技术问题是通过以下的技术方案来实现的。本发明是一种基于大数据的智能交通数据分析系统,其特点是,包括:

数据加载模块,将交通基础设施产生的流量和卡口数据写入hbase;

流量统计和分析模块,实现按车道流量分析、按相位流量分析、按方向流量分析三项功能,对流量数据进行处理,展示处理结果,为路口配时提供决策依据和推荐方案;

路段旅行时间分析模块,模块实现路段或路线所有旅行时间计算、旅行时间聚类分析、方案评价和拥堵状态发布四项功能,对卡口数据进行处理,展示处理结果,提供方案的评价依据,发布拥堵状态;

车辆轨迹分析模块,统计指定时间范围内的车辆轨迹,分析展示车辆的行驶轨迹;

最优路径推荐模块,利用卡口数据实时计算路段的拥堵状态和路径的平均旅行时间,综合路段的拥堵状态和路径的平均旅行时间向用户推荐最优路径;

od分析模块,系统根据卡口数据分析在指定的时间范围内和指定车辆类型经过起点和终点的交通出行量,并统计每个途径点的途径次数,并以热力图的方式展示结果,对出行量进行统计分析。

本发明所述的基于大数据的智能交通数据分析系统,其进一步优选的技术方案或技术特征是:该系统采用b/s架构模式,采用三层架构,将数据层、服务层和应用层划分到不同的模块中,数据层分为集群数据层和非集群数据层,服务层对应分为集群服务层和非集群服务层,而由统一的应用层和集群服务层和非集群服务层,系统设计尽量解耦。

本发明所述的基于大数据的智能交通数据分析系统,其进一步优选的技术方案或技术特征是:系统采用kafka作为消息服务器,sparkstreaming作为实时流式处理系统,前端设备将流量和卡口数据写入kafka服务器,sparkstreaming作为消费者读取kafka中的数据并将处理后的数据写入hbase。

本发明所述的基于大数据的智能交通数据分析系统,其进一步优选的技术方案或技术特征是:所述的数据加载模块为在线处理,数据加载模块独立于系统中的其他模块,作为系统的输入,负责将前端设备产生的数据写入hbase中;前端设备作为生产者将卡口数据和流量数据提交给消息系统kafka;用sparkstreaming编写消费者,向kafkabroker读取消息,根据数据类别的不同,将数据分别存储到hbase的卡口数据表和流量数据表中;

在kafka中分别为流量和卡口数据建立两个topic,将broker建立在所有主机的6667端口上,数据转发中间件通过生产者的方式向broker转发数据;以sparkstreaming的方式向broker订阅卡口数据和流量数据,并将主动获取的数据按topic分类写入hbase对应的表中。

本发明所述的基于大数据的智能交通数据分析系统,其进一步优选的技术方案或技术特征是:所述的流量统计和分析模块中,流量统计模块为离线数据分析,分为按车道流量分析、按相位流量分析、按方向流量分析;流量分析模块为在线数据分析;

所述按车道流量分析是统计用户所选路口集合中所有路口在指定时间范围内,每隔指定时间段所有车道的流量数据,统计完毕后,将统计结果保存于hbase数据库;用户可以选择查看并对比单个路口某些车道流量,用户可以选择查看并对比某些路口所选车道流量;

所述按相位流量分析是统计用户所选路口集合中所有路口在指定时间范围内,每隔指定时间段所有相位的流量数据;统计完毕后,将统计结果保存于hbase数据库;用户可以选择查看并对比单个路口某些相位流量,用户可以选择查看并对比某些路口所选相位流量;

所述按方向流量分析是统计用户所选路口集合中所有路口在指定时间范围内,每隔指定时间段所有方向的流量数据;统计完毕后,将统计结果保存于hbase数据库;用户可以选择查看并对比单个路口某些方向流量,用户可以选择查看并对比某些路口所选方向流量;

流量分析模块中,用户可以在系统中配置路口集,利用kafka结合sparkstreaming获取路口集中所有路口的实时流量信息,对每一个路口,根据相位流量和当前路口的放行方案,进行路口运行状态评估,并给出推荐放行方案,并将推荐放行方案保存于hbase数据库中。

本发明所述的基于大数据的智能交通数据分析系统,其进一步优选的技术方案或技术特征是:所述路段旅行时间分析模块包括路段或路线所有旅行时间计算、旅行时间聚类分析、方案评价和拥堵状态发布,前三个功能为离线数据分析,拥堵状态发布为在线数据分析;

路段或路线所有旅行时间计算:用户在系统中选择需要统计的路段或路线并指定时间范围;对每一条路段或路线,统计在指定时间范围内经过路段或路线的所有车辆的旅行时间,并将结果保存于数据库中,当用户选择查看指定时间范围某路段或路线的旅行时间时,使用echarts散点图控件展现所有通过该路段或路线的车辆的旅行时间,其中x轴表示车辆起始时间,y轴表示车辆的旅行时间;

旅行时间聚类分析:散点图控件展现后,将每一辆车的旅行时间看作一个时间样本用户可以选择对旅行时间进行聚类,聚类结果为所有类别包含的样本时间、类中心点和时间样本个数,系统自动选择包含时间样本最多的类的中心点作为有效路段旅行时间;用户也可以自己标定有效旅行时间与最小旅行时间,并将结果保存于数据库中;

方案评价:用户可以查看并对比某路段或路线在不同时间段内所有车辆的旅行时间,以评价不同时间的方案的运行结果;在echarts中用散点图控件展现,整体旅行时间趋势越靠近0,那么表示该时段运行的方案越优秀;

拥堵状态发布:用户选择所有需要发布拥堵状态的路段,使用kafka结合sparkstreaming获取实时卡口数据,实时计算路段有效旅行时间,然后利用路段距离和有效旅行时间计算交通拥堵指数,根据交通拥堵指数发布路段的拥堵状态为:畅通、基本畅通、轻度拥堵、中度拥堵与严重拥堵。

本发明所述的基于大数据的智能交通数据分析系统,其进一步优选的技术方案或技术特征是:所述车辆轨迹分析模块属于离线数据分析;用户在系统中选择需要统计的车辆并指定时间范围;经大数据分析后,系统返回每辆车在指定时间范围内所到达的卡口坐标,根据已有卡口坐标在高德地图中进行路径规划,并将路径规划结果展示给用户。

本发明所述的基于大数据的智能交通数据分析系统,其进一步优选的技术方案或技术特征是:所述最优路径推荐模块属于在线数据分析;用户选择起始点和终止点,系统计算这两点间的可行路径,对每一条可行路径,使用kafka结合sparkstreaming获取实时卡口数据,实时计算路段的拥堵状态和路径的平均旅行时间,综合路段的拥堵状态和路径的平均旅行时间进行路径推荐,最终将路径推荐的结果实时更新在高德地图上,用颜色表示每个路段的拥堵状态,并展示路径的平均旅行时间。

本发明所述的基于大数据的智能交通数据分析系统,其进一步优选的技术方案或技术特征是:所述od分析模块为离线数据分析;用户选择起点a、终点b、时间范围和车辆类型,系统根据卡口数据分析在指定的时间范围内和指定车辆类型经过起点a和终点b的交通出行量,并统计每个途径点的途径次数;最终将分析结果展示在电子地图上,途径点按照途径次数划分等级,以热力图的形式展示。

与现有技术相比,本发明系统具有海量数据处理能力,功能丰富,集成度高,耦合度低,可集成于实际道路交通控制系统中。能实现海量数据存储、海量数据在线与离线分析等功能,以流量数据与卡口数据为基础,为城市智能交通提供运行状态、评价和配时推荐等重要信息。

附图说明

图1为本发明的数据入库流程图;

图2为本发明各模块间的调用关系图。

具体实施方式

下面结合附图对本发明的实施方式作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和过程,但本发明的保护范围不限于下述的实施例。

实施例1,一种基于大数据的智能交通数据分析系统,包括:

数据加载模块,将交通基础设施产生的流量和卡口数据写入hbase;

流量统计和分析模块,实现按车道流量分析、按相位流量分析、按方向流量分析三项功能,对流量数据进行处理,展示处理结果,为路口配时提供决策依据和推荐方案;

路段旅行时间分析模块,模块实现路段或路线所有旅行时间计算、旅行时间聚类分析、方案评价和拥堵状态发布四项功能,对卡口数据进行处理,展示处理结果,提供方案的评价依据,发布拥堵状态;

车辆轨迹分析模块,统计指定时间范围内的车辆轨迹,分析展示车辆的行驶轨迹;

最优路径推荐模块,利用卡口数据实时计算路段的拥堵状态和路径的平均旅行时间,综合路段的拥堵状态和路径的平均旅行时间向用户推荐最优路径;

od分析模块,系统根据卡口数据分析在指定的时间范围内和指定车辆类型经过起点和终点的交通出行量,并统计每个途径点的途径次数,并以热力图的方式展示结果,对出行量进行统计分析。

实施例2,实施例1所述的基于大数据的智能交通数据分析系统中:该系统采用b/s架构模式,采用三层架构,将数据层、服务层和应用层划分到不同的模块中,数据层分为集群数据层和非集群数据层,服务层对应分为集群服务层和非集群服务层,而由统一的应用层和集群服务层和非集群服务层,系统设计尽量解耦。

系统架构分为数据层、服务层和应用层:数据层包括集群数据层和非集群数据层,非集群数据层可以采用传统oracle数据库,集群数据层采用hbase数据库,非集群数据层存储结构化非海量数据,利用java进行数据处理。集群数据层存储海量交通数据,spark计算框架负责大数据的在线和离线分析,此外数据层还负责响应服务层的数据处理请求;服务层基于springmvc框架搭建,和数据层对应,分为集群服务层和非集群服务层,提供简洁高效的restful接口来处理来自应用层的请求。集群服务层向集群数据层的大数据资源管理与调度器yarn提交相应的job请求进行大数据分析,非集群服务层通过hibernate框架操作oracle数据库进行数据处理。应用层根据用户的操作向服务层发起restful请求,获取http应答结果并用echarts展示。

实施例3,实施例1或2所述的基于大数据的智能交通数据分析系统中:系统采用kafka作为消息服务器,sparkstreaming作为实时流式处理系统,前端设备将流量和卡口数据写入kafka服务器,sparkstreaming作为消费者读取kafka中的数据并将处理后的数据写入hbase。

实施例4,实施例1-3任何一项所述的基于大数据的智能交通数据分析系统中:所述的数据加载模块为在线处理,数据加载模块独立于系统中的其他模块,作为系统的输入,负责将前端设备产生的数据写入hbase中;前端设备作为生产者将卡口数据和流量数据提交给消息系统kafka;用sparkstreaming编写消费者,向kafkabroker读取消息,根据数据类别的不同,将数据分别存储到hbase的卡口数据表和流量数据表中;

在kafka中分别为流量和卡口数据建立两个topic,将broker建立在所有主机的6667端口上,数据转发中间件通过生产者的方式向broker转发数据;以sparkstreaming的方式向broker订阅卡口数据和流量数据,并将主动获取的数据按topic分类写入hbase对应的表中。

实施例5,实施例1-4任何一项所述的基于大数据的智能交通数据分析系统中:所述的流量统计和分析模块中,流量统计模块为离线数据分析,分为按车道流量分析、按相位流量分析、按方向流量分析;流量分析模块为在线数据分析;

所述按车道流量分析是统计用户所选路口集合中所有路口在指定时间范围内,每隔指定时间段所有车道的流量数据,统计完毕后,将统计结果保存于hbase数据库;用户可以选择查看并对比单个路口某些车道流量,用户可以选择查看并对比某些路口所选车道流量;

所述按相位流量分析是统计用户所选路口集合中所有路口在指定时间范围内,每隔指定时间段所有相位的流量数据;统计完毕后,将统计结果保存于hbase数据库;用户可以选择查看并对比单个路口某些相位流量,用户可以选择查看并对比某些路口所选相位流量;

所述按方向流量分析是统计用户所选路口集合中所有路口在指定时间范围内,每隔指定时间段所有方向的流量数据;统计完毕后,将统计结果保存于hbase数据库;用户可以选择查看并对比单个路口某些方向流量,用户可以选择查看并对比某些路口所选方向流量;

流量分析模块中,用户可以在系统中配置路口集,利用kafka结合sparkstreaming获取路口集中所有路口的实时流量信息,对每一个路口,根据相位流量和当前路口的放行方案,进行路口运行状态评估,并给出推荐放行方案,并将推荐放行方案保存于hbase数据库中。

实施例6,实施例1-5任何一项所述的基于大数据的智能交通数据分析系统中:所述路段旅行时间分析模块包括路段或路线所有旅行时间计算、旅行时间聚类分析、方案评价和拥堵状态发布,前三个功能为离线数据分析,拥堵状态发布为在线数据分析;

路段或路线所有旅行时间计算:用户在系统中选择需要统计的路段或路线并指定时间范围;对每一条路段或路线,统计在指定时间范围内经过路段或路线的所有车辆的旅行时间,并将结果保存于数据库中,当用户选择查看指定时间范围某路段或路线的旅行时间时,使用echarts散点图控件展现所有通过该路段或路线的车辆的旅行时间,其中x轴表示车辆起始时间,y轴表示车辆的旅行时间;

旅行时间聚类分析:散点图控件展现后,将每一辆车的旅行时间看作一个时间样本用户可以选择对旅行时间进行聚类,聚类结果为所有类别包含的样本时间、类中心点和时间样本个数,系统自动选择包含时间样本最多的类的中心点作为有效路段旅行时间;用户也可以自己标定有效旅行时间与最小旅行时间,并将结果保存于数据库中;

方案评价:用户可以查看并对比某路段或路线在不同时间段内所有车辆的旅行时间,以评价不同时间的方案的运行结果;在echarts中用散点图控件展现,整体旅行时间趋势越靠近0,那么表示该时段运行的方案越优秀;

拥堵状态发布:用户选择所有需要发布拥堵状态的路段,使用kafka结合sparkstreaming获取实时卡口数据,实时计算路段有效旅行时间,然后利用路段距离和有效旅行时间计算交通拥堵指数,根据交通拥堵指数发布路段的拥堵状态为:畅通、基本畅通、轻度拥堵、中度拥堵与严重拥堵。

实施例7,实施例1-6任何一项所述的基于大数据的智能交通数据分析系统中:所述车辆轨迹分析模块属于离线数据分析;用户在系统中选择需要统计的车辆并指定时间范围;经大数据分析后,系统返回每辆车在指定时间范围内所到达的卡口坐标,根据已有卡口坐标在高德地图中进行路径规划,并将路径规划结果展示给用户。

实施例8,实施例1-7任何一项所述的基于大数据的智能交通数据分析系统中:所述最优路径推荐模块属于在线数据分析;用户选择起始点和终止点,系统计算这两点间的可行路径,对每一条可行路径,使用kafka结合sparkstreaming获取实时卡口数据,实时计算路段的拥堵状态和路径的平均旅行时间,综合路段的拥堵状态和路径的平均旅行时间进行路径推荐,最终将路径推荐的结果实时更新在高德地图上,用颜色表示每个路段的拥堵状态,并展示路径的平均旅行时间。

实施例9,实施例1-7任何一项所述的基于大数据的智能交通数据分析系统中:所述od分析模块为离线数据分析;用户选择起点a、终点b、时间范围和车辆类型,系统根据卡口数据分析在指定的时间范围内和指定车辆类型经过起点a和终点b的交通出行量,并统计每个途径点的途径次数;最终将分析结果展示在电子地图上,途径点按照途径次数划分等级,以热力图的形式展示。

智能交通系统中设备产生的流量和卡口数据保存于大数据集群的hbase数据库中,而其它数据保存于oracle数据库中,用户可以在系统中对海量流量和卡口数据进行数据分析,对有价值的数据结果进行保存,并在系统中展示。例如查找一辆车在指定时间段内的行车轨迹,数据层接收服务层提交的job,在hbase数据库中查找记录并将结果返回给服务层,服务层接收轨迹数据并返回给应用层,应用层在地图上展示车辆轨迹。

大数据集群可以由4台x86架构的服务器组成,每台服务器的搭载10个2tb硬盘,2个2.5ghz的8核cpu,128gb内存,服务器通过千兆以太网连接。集群数据层中,大数据分析功能基于hadoop2.7.3,spark1.6.2,scala2.10.5,使用scala语言进行开发;非集群数据层的数据处理基于jdk1.8,使用java语言进行开发。非集群数据层的传统数据库基于oracle11g搭建,存储卡口映射表、路口映射表、路口当前放行方案表和路口车道映射表。集群数据层的海量数据存储基于hbase,存储路口各车道的流量数据和各卡口的过车数据。利用spark计算框架和scala语言处理hbase中的海量数据并打成jar包,以供服务层调用。非集群服务层基于springmvc框架整合hibernate进行开发,通过springmvc实现请求与业务处理,对oracle的访问通过hibernate实现高效交互;集群服务层基于springmvc进行开发,与非集群服务层处于不同的域中,对hbase数据的访问通过jar包的调用以提交job来实现。

应用层负责与服务层进行交互,采用ajaxjsonp对集群服务层进行跨域访问,采用ajaxjson访问非集群服务层的restful接口和服务器进行数据交互。

实施例10,一种基于大数据的智能交通数据分析系统,包括一个基于大数据的数据加载模块和5个基于大数据的智能交通数据分析模块:流量统计和分析模块、路段旅行时间分析模块、车辆轨迹分析模块、最优路径推荐模块和od分析模块。

1.数据加载模块

数据加载模块:为在线处理。该模块独立于系统中的其他模块,作为系统的输入,负责将前端设备产生的数据写入hbase中。前端设备作为生产者将卡口数据和流量数据提交给消息系统kafka。用sparkstreaming编写消费者,向kafkabroker读取消息,根据数据类别的不同,将数据分别存储到hbase的卡口数据表和流量数据表中。

卡口表在hbase中的表结构为:

其中卡口表的行健为carnum(车牌号)、passdate(过车时间)和addresscode(卡口编号)的组合,唯一的列族cf1包含carnum(车牌号)、passdate(过车时间)、addresscode(卡口编号)、dirid(车道方向)、cartype(车辆类型)、typecolor(车牌颜色)和lanenum(车道号)。

为了按照时间查询应用能够快速得到分析结果,以passdate+addresscode+carnum建立组合二级索引。

流量表在hbase中的表结构为:

其中流量表的行健为roadid(路口id)和datetime(1分钟开始时间)的组合,唯一的列族cf1包含roadid(路口id)、datetime(1分钟开始时间)、dirid(车道方向)、lanenum(车道号)和roadname(路口名)。

为了按照时间查询应用能够快速得到分析结果,以datetime+roadid建立组合二级索引。

在kafka中分别为流量和卡口数据建立两个topic,将broker建立在所有主机的6667端口上,数据转发中间件通过生产者的方式向broker转发数据;以sparkstreaming的方式向broker订阅卡口数据和流量数据,并将主动获取的数据按topic分类写入hbase对应的表中。

2.流量统计和分析模块

流量统计模块:为离线数据分析,分为按车道流量分析、按相位流量分析、按方向流量分析。

车道流量分析:统计用户所选路口集合中所有路口在指定时间范围内,每隔指定时间段所有车道的流量数据。统计完毕后,将统计结果保存于hbase数据库。用户可以选择查看并对比单个路口某些车道流量,例如,将路口1的车道1、车道2与车道3一天24小时流量数据按10分钟时间间隔用echarts折线图控件展现;用户可以选择查看并对比某些路口所选车道流量,例如,将路口1车道1、路口2与路口3的车道11一天24小时流量数据按5分钟时间间隔用echarts折线图控件展现。

相位流量分析:统计用户所选路口集合中所有路口在指定时间范围内,每隔指定时间段所有相位的流量数据。统计完毕后,将统计结果保存于hbase数据库。用户可以选择查看并对比单个路口某些相位流量,例如,将路口1的东直、西直与南直相位一天24小时流量数据按10分钟时间间隔用echarts折线图控件展现;用户可以选择查看并对比某些路口所选相位流量,例如,将路口1东直相位、路口2与路口3的西直相位一天24小时流量数据按5分钟时间间隔用echarts折线图控件展现。

方向流量分析:统计用户所选路口集合中所有路口在指定时间范围内,每隔指定时间段所有方向的流量数据。统计完毕后,将统计结果保存于hbase数据库。用户可以选择查看并对比单个路口某些方向流量,例如,将路口1的东方向、西方向一天24小时流量数据按10分钟时间间隔用echarts折线图控件展现;用户可以选择查看并对比某些路口所选方向流量,例如,将路口1、路口2与路口3的东方向一天24小时流量数据按30分钟时间间隔用echarts折线图控件展现。

流量分析模块:为在线数据分析。用户可以在系统中配置路口集,利用kafka结合sparkstreaming获取路口集中所有路口的实时流量信息,对每一个路口,根据相位流量和当前路口的放行方案,进行路口运行状态评估,并给出推荐放行方案,并将推荐放行方案保存于hbase数据库中。

3.路段旅行时间分析模块

路段旅行时间分析模块包括路段或路线所有旅行时间计算、旅行时间聚类分析、方案评价和拥堵状态发布,前三个功能为离线数据分析,拥堵状态发布为在线数据分析。

路段或路线所有旅行时间计算:用户在系统中选择需要统计的路段或路线并指定时间范围。对每一条路段或路线(例如路口1至路口2的有向路段),统计在指定时间范围内经过路段或路线的所有车辆的旅行时间,并将结果保存于数据库中,当用户选择查看指定时间范围某路段或路线的旅行时间时,使用echarts散点图控件展现所有通过该路段或路线的车辆的旅行时间,其中x轴表示车辆起始时间,y轴表示车辆的旅行时间。

旅行时间聚类分析:散点图控件展现后,将每一辆车的旅行时间看作一个时间样本用户可以选择对旅行时间进行聚类,聚类结果为所有类别包含的样本时间、类中心点和时间样本个数,系统自动选择包含时间样本最多的类的中心点作为有效路段旅行时间;用户也可以自己标定有效旅行时间与最小旅行时间,并将结果保存于数据库中。

方案评价:用户可以查看并对比某路段或路线在不同时间段内所有车辆的旅行时间,以评价不同时间的方案的运行结果。例如:将路口1至路口2之间的路段在2018.1.117:00:00-2018.1.118:00:00的所有车辆旅行时间用红色散点表示,2018.1.217:00:00-2018.1.218:00:00的所有车辆旅行时间用蓝色散点表示,在echarts中用散点图控件展现,整体旅行时间趋势越靠近0,那么表示该时段运行的方案越优秀。

拥堵状态发布:用户选择所有需要发布拥堵状态的路段,使用kafka结合sparkstreaming获取实时卡口数据,实时计算路段有效旅行时间,然后利用路段距离和有效旅行时间计算交通拥堵指数,根据交通拥堵指数发布路段的拥堵状态为:畅通、基本畅通、轻度拥堵、中度拥堵与严重拥堵。

4.车辆轨迹分析模块

车辆轨迹分析模块:属于离线数据分析。用户在系统中选择需要统计的车辆并指定时间范围。经大数据分析后,系统返回每辆车在指定时间范围内所到达的卡口坐标,根据已有卡口坐标在高德地图中进行路径规划,并将路径规划结果展示给用户。

5.最优路径推荐模块

最优路径推荐模块:属于在线数据分析。用户选择起始点和终止点,系统计算这两点间的可行路径,对每一条可行路径,使用kafka结合sparkstreaming获取实时卡口数据,实时计算路段的拥堵状态和路径的平均旅行时间,综合路段的拥堵状态和路径的平均旅行时间进行路径推荐,最终将路径推荐的结果实时更新在高德地图上,用颜色表示每个路段的拥堵状态,并展示路径的平均旅行时间。

6.od分析模块

od分析模块:为离线数据分析。用户选择起点a、终点b、时间范围和车辆类型,系统根据卡口数据分析在指定的时间范围内和指定车辆类型经过起点a和终点b的交通出行量,并统计每个途径点的途径次数。最终将分析结果展示在高德地图上,途径点按照途径次数划分等级,以热力图的形式展示。

实施例11,一种基于大数据的智能交通数据分析系统,准备4台搭载10个2tb硬盘、2个2.5ghz8核cpu、128gb内存的服务器,分别起名为:host-01、host-02、host-03和host-04,ip地址分配分别为172.16.23.2、172.16.23.3、172.16.23.4和172.16.23.5。服务器安装centos7.2操作系统,安装java编译环境jdk1.8,以本地源的方式安装ambari,在ambari集群监管平台中安装hdfs、tez、hive、kafka、hbase、yarn+mapreduce2、pig、sqoop、zookeeper、spark组件。在host-01中安装tomcat服务器。

将数据加载模块打包成import.jar,并上传到hdfs中,通过spark-submit命令开启输入的流式处理过程,数据入库的过程如图1所示。

将流量统计与分析模块、路段旅行时间分析模块、车辆轨迹分析模块、最优路径推荐模块和od分析模块下所有功能打包成hadoop.jar,并上传到hdfs中,hadoop.jar负责集群数据层的处理。

本系统包含两个web项目:web项目stdas基于springmvc框架整合hibernate开发,是本系统中的顶层应用,包含应用层、非集群应用层和非集群数据层。web项目bdapi基于springmvc框架开发,是本系统中的集群服务层。将stdas部署到tomcat服务器,占用8085端口;将api部署到tomcat服务器,占用端口8086。

系统中各模块间的调用关系如图2所示。

本系统只有stdas对用户可见,包含流量统计与分析模块、路段旅行时间分析模块、车辆轨迹分析模块、最优路径推荐模块和od分析模块,stdas将所有用户的处理请求转变为ajax请求,stdas和bdapi中的控制层采用@requestmapping注解匹配ajax请求中的ip地址和方法,stdas控制层的控制器处理匹配的http请求,并调用相应的服务,服务调用dao和数据库进行交互,终将数据返回给控制层,控制层将数据封装到返回页面的response中,浏览器获取response中的对象,将对象中的数据以文本或者echarts图表的形式展现。bdapi控制层直接向集群提交job,待job执行完毕后,利用hive读取hbase中保存的数据,最终将数据返回给控制层,控制层将数据封装到返回页面的response中,浏览器获取response中的对象,将对象中的数据以文本或者echarts图表的形式展现。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1