ToB企服应用市场:ToB评测及商务社交产业平台

标题: 基于Spark的智能交通管理系统的筹划与实现 [打印本页]

作者: 海哥    时间: 2024-11-27 21:05
标题: 基于Spark的智能交通管理系统的筹划与实现
摘  要

  随着城市化进程的不断加快,交通拥堵问题日益突出。筹划和实现一个智能交通管理系统,能够有效地提高交通运行效率,减少交通拥堵,提升城市住民的出行体验。随着大数据技能的快速发展,Spark作为一种高性能的分布式盘算框架,具有快速处置惩罚大规模数据的能力。使用Spark构建智能交通管理系统,能够更好地处置惩罚交通数据,实现实时的交通状态监测和智能调理。通过智能交通管理系统,可以实现交通信号灯的智能调理,根据实时交通状况举行灵活的信号控制,从而提高交通流量的运行效率。此外,该系统还可以提供实时的交通信息服务,资助司机选择最佳的行驶蹊径,减少旅程时间和燃料消耗。基于Spark的智能交通管理系统可以收集和分析大量的交通数据,如交通流量、车速、路况等。通过对这些数据的深入分析,可以发现交通拥堵的缘故原由和规律,为城市交通规划和管理提供有力的决议支持。
  本系统通过获取交通数据,对其数据分析来得到二次数据,为用户提供数据展示,从而有效办理上述问题 ,具有肯定的应用代价。本系统主要包罗了数据采集、数据分析和数据展示三个大板块,数据采集模块为系统提供原始的用户数据,数据分析模块通过定制的策略得到分析得到代价信息,并提供给数据展示模块来前端表现。另外系统还提供了系统管理模块,为系统的注册用户提供个性化使用功能。本系统使用Scrapy技能来举行数据采集过程,并使用Spark举行数据分析,数据库方面采用的是MySQL,Web界面使用Flask技能,为用户提供有效的信息支持和操纵简化。
  
  关键字: 交通数据分析;Spark;Scrapy爬虫;数据可视化
  
  
  

  
Design and implementation of intelligent traffic management system based on Spark

  
  Abstract

  With the acceleration of urbanization, the problem of traffic congestion is becoming increasingly prominent. The design and implementation of an intelligent traffic management system can effectively improve the efficiency of traffic operation, reduce traffic congestion, and enhance the travel experience of urban residents. With the rapid development of big data technology, Spark, as a high-performance distributed computing framework, has the ability to quickly process large-scale data. Using Spark to build an intelligent traffic management system can better process traffic data and realize real-time traffic status monitoring and intelligent scheduling. Through the intelligent traffic management system, the intelligent scheduling of traffic lights can be realized, and the flexible signal control can be carried out according to the real-time traffic conditions, so as to improve the operating efficiency of traffic flow. In addition, the system can provide real-time traffic information services to help drivers choose the best route, reducing travel time and fuel consumption. The intelligent traffic management system based on Spark can collect and analyze a large amount of traffic data, such as traffic flow, speed, road conditions, etc. Through the in-depth analysis of these data, we can find the causes and rules of traffic congestion, and provide powerful decision-making support for urban traffic planning and management.
  This system obtains secondary data by acquiring traffic data and analyzing its data to provide users with data display, so as to effectively solve the above problems and has certain application value. The system mainly includes three major sections: data acquisition, data analysis and data display. The data acquisition module provides the original user data for the system, and the data analysis module obtains the value information through the customized strategy, and provides the data display module for front-end display. In addition, the system also provides a system management module, which provides personalized functions for the registered users of the system. This system uses Scrapy technology to carry out data collection process, and uses Spark for data analysis. MySQL is used in database, and Flask technology is used in Web interface to provide users with effective information support and operation simplification.
  
  Key words: traffic data analysis; Spark; Scrapy; Data visualization
  
  
  

  

  
目  录

  
  
   摘  要
  Abstract
  1  绪论
  1.1  研究背景及意义
  1.2  国内外研究现状
  1.3  论文布局
  2  开发技能
  2.1  Spark 分布式框架
  2.2  Scrapy爬虫技能
  2.3  Mysql
  2.4 Flask
  3  需求分析
  3.1  可行性分析
  3.1.1  经济可行性
  3.1.2  技能可行性
  3.1.3  运行可行性
  3.1.4  时间可行性
  3.2  功能需求分析
  3.2.1  总体流程
  3.2.2  数据采集
  3.2.3  数据分析
  3.3  非功能需求分析
  4  系统筹划
  4.1  总体筹划
  4.2 数据采集
  4.3  数据分析
  4.5   逻辑筹划
  5.  系统实现
  5.1  大数据环境搭建
  5.1.1  部署HDFS
  5.1.2  部署Spark集群
  5.2  数据可视化
  5.2.1  登录
  5.2.2  交通数据管理
  5.2.3 交通数据分析
  5.2.4 交通拥堵猜测
  5.4  本章小结
  6  总结
  6.1  结论
  6.2  猜测
  参 考 文 献
  致  谢
  
  
   
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
   
  1  绪论

  1.1  研究背景及意义

  随着社会经济的连续发展,越来越多的人会选择私家车出行,而交通工具汽车数量的增加,给人们的出行带来了巨大便利的同时,也出现了各种各样的交通问题,如交通堵塞,汽车数量不断增加,道路的通行效率越来越低等等,因此为了创建一个安全并且交通通畅的环境,筹划者们为优化交通管理也取得了很多成果。
  首先是数据处置惩罚,随着道路上车辆的数量越来越多,而车辆的行驶旅程,以及车辆出现的状况,这些转化为信息数据后,使得数据信息量也随之增加,因此为了处置惩罚越来越多的数据量,用上了处置惩罚速度快且安全可靠的MySQL数据库来举行数据处置惩罚。其次是当有效户使用交通系统时,对新用户举行正确的用户信息注册,并正确地对信息举行识别,对错误的用户信息不予以使用,并对系统不同用户的权限举行区分,还有对用户出现违章时的提示。如对普通用户只能使用对该系统的浏览功能,以及查询功能;对于该系统的管理用户则可以使用对其他用户信息的查看,对用户信息的增删查改,对其它用户的后台监督功能等等。还有对于实时采集到的交通数据举行流量猜测和拥堵状况分析。通过对汗青数据的学习和模子练习,系统能够正确地猜测将来的交通流量,为交通管理者提供公道的蹊径规划和拥堵劝导方案。然后是对交通数据信息的实时分析评估与处置惩罚,对于道路上出现的状况举行信息数据分析,分析出该状况会对当前道路的通行效率产生的影响,对造成的影响举行评估等级,然后根据评估得出的等级来举行接下来对于该状况的处置惩罚,末了是为到达最优化处置惩罚该状况所要举行的交通管理决议。还有就是交通系统的安全以及可靠性,对于该系统的涉及大量敏感信息和关键的交通决议,交通管理系统也对信息安全的保障和关键的交通决议实验也有很大的资助。
  以上的成果让我们明白了在当前社会经济的发展形势下,人们的出行问题固然在不断地被办理,但是新的问题也不断地出现,面对不断出现的新挑战,因此需要有一个智能交通管理系统来资助人们建设一个安全且交通顺畅的环境。随着交通管理技能的不断进步,交通管理系统也将愈发完善,但是交通管理系统也还存在问题与缺陷。为此需要创建一个更为善用的交通管理系统来改善当前的交通状况,对交通管理产生事半功倍的结果。
  
  1.2  国内外研究现状

  大数据在交通管理系统中的应用已经成为国内外研究的热门之一,以下是一些关于大数据交通管理系统国内外研究现状的概述:
  国内研究现状:
  交通数据采集与处置惩罚:国内学者通过GPS、传感器、卫星遥感等本领采集交通数据,并使用大数据技能举行处置惩罚和分析。交通流猜测与优化:使用大数据分析交通流量数据,猜测交通拥堵环境,实现交通优化调理。智能交通信号控制:运用大数据技能改进交通信号控制系统,提高交通效率和减少拥堵。出行行为分析:通过大数据分析乘客出行数据,研究出行模式、偏好,为交通规划和筹划提供参考。
  国外研究现状:
  智能交通管理系统:发达国家如美国、欧洲等致力于创建智能交通管理系统,使用大数据实现智能交通监控和管理。交通模子与仿真:国外学者使用大数据构建交通仿真模子,评估不同交通政策对城市交通系统的影响。交通数据共享与开放:倡导交通数据的共享和开放,以促进不同单位间的数据交换和合作,推动交通管理程度的提升。智能交通决议支持系统:创建基于大数据的智能交通决议支持系统,为决议者提供科学依据和参考。
  
  1.3  论文布局

  本文分为六章,主要内容如下:
  第一章:绪论。叙述研究背景与研究意义,对国内外大数据应用对交通业发展影响举行分析。
  第二章:开发技能。介绍筹划中需要用到的开发技能,Spark,Python,Mysql数据库,Flask以及数据可视化工具。
  第三章:需求分析。 本章主要介绍到场本系统中的主要用户构成,并逐一分析各个不同用的需求,并关联到具体的功能和构造上,总结需求,为筹划做预备。
  第四章:系统筹划。通过需求分析的结果来构建系统的布局,并分析系统的基础框架,同时还包罗了系统的数据库筹划等。
  第五章:系统实现。 通过现实的代码编写来实现系统。
  第六章:总结。总结做的工作以及存在的缺点。
  
  2  开发技能

  2.1  Spark 分布式框架

  Spark是由UC Berkeley AMPLab实验室研发并开源的基于内存盘算的高效分布式盘算框架。相比于传统的Hadoop, Spark弓|进了弹性分布式数据块(resilient distributed dataset,RDD),高效的有向无环图(directed acyclic graph,DAG)实验引擎,提高了在大数据环境下游数据处置惩罚的实时性,同时保证了高容错性和高可伸缩性。除此之外,Spark还兼容分布式文件系统(hadoop distributed file system,HDFS)分布式存储、多语言编程接口以及实时数据流处置惩罚(spark streaming)、交互式查询(spark SQL)、呆板学习 (spark MLlib)和图盘算(spark GraphX)通用组件库来办理实时盘算、呆板学习和图盘算等应用场景。整个Spark生态系统如图2-1所示。
  

  
图2-1  Spark的生态圈

  2.2  Scrapy爬虫技能

  爬虫技能的一般流程是:
  :(1)明确需要爬取的目标、内容;爬取哪个网站的哪些内容,每个网站的URL是不一样的,需要正确地输入,好比,百度的URL是: http://www.baidu.com; 京东的URL是: http://www.jd.com;需要爬取哪些内容,得正确地书写; (2)用户向服务器发送哀求; - -般需要加哀求的报头,好比加:“User-Agent",以免被误认为是非法客户的访问; (3)服务器返回给用户的数据;服务器会给用户发回许许多多的数据,包罗有代价的数据和无代价的数据等等; (4)解析、提取需要的数据;从服务器返回的数据中,解析和提取有代价的数据,过滤无代价的数据; (5)用文件、数据库或其它方式存储相应的数据;把解析和提取的有代价数据用不同的形式生存以备用。
  Python也提供了许多框架来实现爬虫技能,好比Portia、 Crawley、 Scrapy等等。此中Scrapy框架 ,包罗下载器 、Spider中间件 (Spider Middlewares)、下 载器中间件等多个组件。同时,Scrapy框架也包罗了许多作用不同的相对应的下令,好比使用Scrapy下载器下载的URL并且将内容输出的fetch下令。
  但是,由于爬虫的过程中,许多服务器资源会被消耗掉,服务器的稳定性也会受到很大影响,基于种种缘故原由,爬虫是不受网站所有者的接待。为了能够顺利地实现爬虫技能,需要先了解网站所有者所制定的限制措施反爬虫,然后,再制定相应的措施来规避反爬虫。好比,可以通过访问频度的调整来规避反爬虫,这种方法主要是针对有些网站设置的访问频度阈值,爬虫时设置的阈值应该恰当,可以比网站设置的访问频度阈值要略低,这样爬取的稳定性会比较好、爬取的效率也会比较高。还有其它规避反爬虫的方法:代理IP、应对网站布局厘革等等。Python提供了许多库来实现爬虫技能,好比:BeautifulSoup库、rurlib库、requests 库和pycurl库等等。此中,用得比较多的是requests库,包罗以下常用的函数: request、get、 head、 post、 put、 patch、delete等等。
  Scarpy爬虫架构图如图2-2所示:
  

  
图2-2  架构图

  爬虫调理器:总体协调其它几个模块的工作。
  URL管理器:负责管理URL,维护已经爬取的URL聚集和未爬取的URL聚集。
  网页下载器:对未爬取的URL下载。
  网页解析器:解析已下载的html,并从中提取新的URL交给URL管理器,数据交给存储器处置惩罚。
  数据存储器:将html解析出来的数据举行存取。
  2.3  Mysql

   MySQL是目前IT行业最盛行的开放源代码的数据库管理系统,同时它也是一个支持多线程高并发多用户的关系型数据库管理系统。MySQL之所以受到业界人士的青睐,主要是因为其具有以下几方面优点:
  (1)开放源代码
  MySQL最强大的优势之一在于它是一个开放源代码的数据库管理系统。开源的特点是给予了用户根据自己需要修改DBMS的自由。
  (2) 跨平台
  MySQL可以在不同的操纵系统下运行,简单地说,MySQL可以支持Windows系统、UNIX系统、Linux系统等多种操纵系统平台。
  (3) 轻量级
  MySQL的核心步伐完全采用多线程编程,这些线程都是轻量级的进程,它在灵活地为用户提供服务的同时,又不会占用过多的系统资源。因此MySQL能够更快速、高效的处置惩罚数据。
  (4) 本钱低
  MySQL分为社区版和企业版,社区版是完全免费的,而企业版是收费的。免费的社区版支持多种数据范例和正规的SQL查询语言,能够对数据举行各种查询、增加、删除、修改等操纵,所以一般环境下社区版就可以满意开发需求了,而对数据库可靠性要求比较高的企业可以选择企业版。
  总体来说,MySQL是一款开源的、免费的、轻量级的关系型数据库,其具有体积小、速度快、本钱低、开放源码等优点,其发展远景是无可限量的。
  MySQL的实验流程如图2-3所示:
  

  
图2-3  Mysql的实验流程

  解析器:在解析器中对 SQL 语句举行语法分析、语义分析。
  优化器:在优化器中会确定 SQL 语句的实验路径,好比是根据全表检索,还是根据索引来检索等。
  实验器:在实验之前需要判断该用户是否具备权限,如果具备权限就实验SQL查询并返回结果。
  在 MySQL8.0 以下的版本,如果设置了查询缓存,这时会将查询结果举行缓存。
  2.4 Flask

   Flask 是使用 Python 语言开发的一款免费而且开源的 Web 应用框架。由于 Python 语言的跨平台性,所以 Flask 同样支持 Windows、Linux 和 Mac 系统。
  相对于 Python 的其他 Web 框架,Flask 的功能是最完整的,Flask 定义了服务发布、路由映射、模板编程、数据处置惩罚的一整套功能。这也意味着 Flask 模块之间精密耦合。
  Flask 的主要特点如下:
  完善的文档:经过 10 余年的发展和完善,Flask 官方提供了完善的在线文档,为开发者办理问题提供支持。
  集成 ORM 组件:Flask 的 Model 层自带数据库 ORM 组件,为操纵不同范例的数据库提供了统一的方式。
  URL 映射技能:Flask 使用正则表达式管理URL映射,因此给开发者带来了极高的灵活性。
  后台管理系统:开发者只需通过简单的几行设置和代码就可以实现完整的后台数据管理Web控制台。
  错误信息提示:在开发调试过程中如果出现运行异常,Flask 可以提供非常完整的错误信息资助开发者定位问题。
  
  3  需求分析

  3.1  可行性分析

  3.1.1  经济可行性

  开发系统所涉及到的资料,一般是在图书馆查阅,或是在网上举行查找收集。所需要的一些应用软件也都是在网上可以免费下载的,因此,开发本钱是险些为零。但是开发出来的系统,还是具有高效率,低本钱,较高质量的。所以,从经济可行性的角度,该系统符合尺度。
  3.1.2  技能可行性

  技能可行性是考虑在现有的技能条件下,能否顺利完成开发任务。以及判断现有的软硬件设置是否能满意开发的需求。而本系统采用的是本地呆板开发框架,并非十分困难,所以在技能上是绝对可行的。此外,盘算机硬件设置是完全符合发展的需要。
  3.1.3  运行可行性

  当前盘算机信息化的知识已经十分普及了,现在的操纵职员也都是对系统环境有很强的顺应性,各类操纵职员大都是有过培训补充的,因此完全不影响组织布局,所以在运行上也是可行的。
  3.1.4  时间可行性

  从时间上看,在大四的末了一个学期,在实习工作与完成毕设两件大事相交叉的时间里,结合之前学习的相关知识,并开发系统,时间上是有点紧,但是也不是完全没可能实现,通过这段时间的努力功能基本实现。
  3.2  功能需求分析

  3.2.1  总体流程

  交通网站数据采集及分析系统通过对主流的交通信息网站的数据举行抓取,通过定向分析之后,得到了有代价的数据并出现到前端页面中,同时将具体的业务映射到系统功能中,构成一个完整的系统。本流程中主要分为三部分,数据采集和预处置惩罚、数据分析和数据可视化,三部分互相关联,此中,数据采集得到的有效数据大部分是需要通过数据分析过程的,小部分的数据能直接的使用到前端页面中。通过三部分的关联,就可以完整的展现出系统的基本布局。
  3.2.2  数据采集

  数据采集流程是系统中所有的数据信息的起始,通过这个流程来获取所有的数据信息,交付给数据分析部分末了出现到页面上。因此,数据采集部分的功能非常重要,具体如图3-1所示。
  

  
图3-1  数据采集用例

  从图3.2.2可以看出,数据采集的主要任务是抓取工作,包罗了四个部分,分别为抓取入口管理、初始数据管理、抓取任务管理和抓取规则管理: 一、抓取入口管理是针对一些特定的网站,需要对抓取的入口网页举行分析,同时对入口方法举行总结,当入口发生厘革的时间,需要及时的举行更换和调整,保证系统的抓取流程能不停流通, 获取更大量的数据信息;二、初始数据管理,初始数据包罗了数据提交和数据转换,这对应着不同的数据信息,数据提交的是可以直接举行数据出现的信息,包罗了一些不需要更换的,维护性不强的信息,如交通的介绍信息大概是城市的形貌信息等,另外一部分就是需要通过数据分析模块举行分析得到的二次乃至是多次数据,这些数据就需要通过数据转换之后才气举行提交;三、抓取任务管理,当系统中有抓取任务的时间,就需要对任务举行管理,此中包罗了任务启动、任务停止和任务变更,这些都是对应着系统的数据需求,当需要不同范例的数据信息的时间,系统中就会提来获取抓取任务,举行数据的抓取;四、抓取规则管理,针对特定的网站,此中所包罗的数据字段都是特定的,但是也会随着不同的时间而发生厘革,此时,需要根据厘革的时间举行更换,对抓取规则举行更换,保证抓取的数据字段不会发生紊乱。
  3.2.3  数据分析

  大数据交通管理系统的数据分析流程通常涉及多个环节,包罗数据采集、数据清洗、数据存储、数据处置惩罚和数据应用等。
  数据采集:
  从交通监测设备(如摄像头、传感器、GPS设备)获取交通数据。从第三方数据提供商(如舆图服务、交通信息平台)获取实时或汗青交通数据。
  数据清洗:
  对采集到的原始数据举行去重、去噪、异常值处置惩罚等清洗步骤,确保数据的正确性和完整性。对数据举行格式转换、尺度化,以便后续的分析和处置惩罚。
  数据存储:
  将清洗后的数据存储到数据库或数据仓库中,以便后续的查询和分析。选择合适的数据存储技能,如关系型数据库、NoSQL数据库或数据湖等,根据现实需求举行存储架构筹划。
  数据处置惩罚与分析:
  使用大数据处置惩罚技能(如Hadoop、Spark等)对海量交通数据举行处置惩罚和分析,包罗数据聚合、统计分析、时空分析等。运用数据发掘、呆板学习技能,发现交通模式、猜测交通拥堵、优化交通流等。
  3.3  非功能需求分析

  非功能性需求不是用户现实提出来的,而且纵观这个系统,为了使用户有精良的使用性和用户体验,并把它作为一个优秀的软件而继承使用的一种重要的因素,因此非功能需求的分析是不可或缺的。
    响应时间是用户最为关注的一个指标,当用户点击了所需要的功能后,系统反馈的表现信息如果不能在有效反映时间内出现就会导致用户对系统产生厌烦和抵触。因此,系统响应时间很重要,本系统指定的系统响应时间为5秒以内,保证系统的功能反应最慢不凌驾5秒钟。
    主要是系统在整个运行周期里都需要与所有的客户端保持高效毗连,并且在用户发出了功能需求的时间,系统在举行事件交互大概数据查找的时间不会出现死锁的环境,保证系统的所有功能都能正常的运行。
    让用户使用起来更加便捷和顺畅是筹划系统的基础,因此,无论是在筹划系统的功能,还是在举行功能的逻辑衔接的时间都需要考虑到系统的功能布局,不要让用户在使用过程中,违反正常的使用规则,让一个业务操纵可以按照惯常的方式来完成,并可以得当的使用提示信息,方便用户的功能选择和使用,提高系统功能的实用性。
    系统在筹划完成之后,需要对系统举行运维,维护功能都是依赖于系统的基础性筹划,因此,布局筹划上就需要考虑到后期调整时的方便。另外系统在举行升级的时间,不需要让用户端举行复杂的操纵,简化用户操纵,提高运维的高效性。
  4  系统筹划

  4.1  总体筹划

  在任何信息系统当中有代价的数据都是必不可少的重要部分,如何通过手上
  
的资源获取得到有代价的数据便是开发系统。首先需要考虑的问题根据系统的功能筹划数据获取和处置惩罚的流程以及其实现方法都已经基本上确定获取和处置惩罚流程。交通数据分析系统是将数据采集、数据分析和数据可视化融合为一体的分析系统,

  可以看出,交通数据分析系齐备共分为了几个模块,分别为注册登录模块、交通数据管理模块、交通数据分析模块、个人中央模块。从图4-2可以发现,流程中主要分为三部分,数据采集和预处置惩罚、数据分析和数据可视化,三部分互相关联,此中,数据采集得到的有效数据大部分是需要通过数据分析过程的,小部分的数据能直接的使用到前端页面中,比方具体的交通信息等,这些不需要进一步分析,直接传递给数据库提供给前端页面的使用;而另外一部分就需要使用到数据分析过程,通过数据分析之后的代价信息可以通过图表大概是文本形式展现给用户页面。通过三部分的关联,就可以完整的展现出系统的基本布局。
  

  
图4-2  系统架构图

  4.2 数据采集

  数据采集主要包罗了交通数据采集、用户信息采集、车流量数据采集,数据采集主要是针对在交通网站中所具备的主流且重要的信息,交通数据能作为主要的信息展示,用户信息和车流量信息可以通太过析关联关系来得到埋伏的用户兴趣,除此之外,采集策略管理是最关键的,在采集的过程中,由于交通网站可能会制定防爬虫机制大概是更换网页的表现方式,导致最终的采集过程失败,因此需要针对系统来设置策略管理,定期的更换采集策略。
  这个项目我们的主要目标是爬取交通网站网的交通数据信息,包罗交通岗
  位、交通名称和交通形貌和规模等具体详情信息,下面形貌本文爬虫工程主要筹划步骤。
    

  
图4-3  爬虫框架目录布局

    如表4-1所示为修改后的setting文件主要内容,本筹划主要修改三项内容,第一个是不遵循呆板人协议,第二个是下载间隙,由于下面的步伐要下载多个页面,所以需要给一个间隙(不给也可以,只是很轻易被侦测到),第三个是哀求头,添加一个User-Agent。
  
表4-1  爬虫setting文件主要设置

  
class LvyouSpider(scrapy.Spider):
    name = 'lvyou'
    # allowed_domains = ['www.cqvisit.com']
    # start_urls = ['http://www.cqvisit.com/jingqu/xiecheng/']

    def start_requests(self):
        url = 'http://www.cqvisit.com/jingqu/xiecheng/'
        headers = {
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36"
        }
        yield scrapy.Request(url=url,headers=headers,callback=self.parse)
    def parse(self, response):
        print(response.text)
        html = BeautifulSoup(response.text,'html.parser')
        html
        pass
  (3) 确认要提取的数据,item 项
  item定义你要提取的内容(定义数据布局),好比我提取的内容为重庆交通信息可视化的所在城市和交通交通详情,于是需要在items类中新建对应的实体类,并需要设置相应的字段取出对应的数据。Field 方法现实上的做法是创建一个字典,给字典添加一个建,暂时不赋值,等候提取数据后再赋值。
  (4)  开发爬虫步伐,访问下载网页,使用Xpath语法提取内容。
  4.3  数据分析

  数据分析是针对数据采集模块中得到的数据信息举行定向分析的过程,这个功能主要包罗了舆图分析、交通交通分析、交通温度分析、交通季节占比和交通好评分析,舆图分析根据对一个城市的所有效户向天下各地交通的人数做出分析,按照排序可以明确该城市人最喜欢去哪个城市交通;交通交通分析是对整年的交通举行汇总统计出每个月的交通数,并得出某月在某个景区的的交通旺季。 具体数据分析核心代码如下所示。
  class Case_item(models.Model):
      shiqu = models.CharField(verbose_name='城市',max_length=124)
      title = models.CharField(verbose_name='交通',max_length=124)
      details = models.CharField(verbose_name='详情页链接',max_length=424)
      pingfen = models.FloatField(verbose_name='评分')
      city = models.CharField(verbose_name='详细地址',max_length=424)
      heatdegree = models.FloatField(verbose_name='事故')
      img = models.CharField(verbose_name='图片链接',max_length=424)
      content = models.TextField(verbose_name='简介')
      openinghours = models.CharField(verbose_name='开放时间',max_length=424)
      count = models.FloatField(verbose_name='车流量')
      def __str__(self):
          return self.title
      class Meta:
          verbose_name = u"数据表"
          verbose_name_plural = verbose_name
  class PingLun(models.Model):
      case_item_id = models.ForeignKey(Case_item,on_delete=models.CASCADE)
      text = models.TextField(verbose_name='车流量')
  
      class Meta:
          verbose_name = u"车流量表"
          verbose_name_plural = verbose_name
  4.5   逻辑筹划

  数据库表统共包罗五个,具体信息如下:
  (1) 用户信息表能够存储系统中的用户信息,用户信息表如表4-2所示。
  表4-2  用户信息表
  
列名
数据范例
长度
主外键
注释
id
int
11

编号
username
varchar
45

名称
email
varchar
45

邮箱
password
varchar
45

密码
phone
varchar
45

电话
address
varchar
45

地址
  (2)交通数据表能够存储交通数据 如表4-2所示
  
表4-3 交通数据表

  
列名
数据范例
长度
主外键
注释
id
int
11

交通事故ID
Name
varchar
1

道路
Type
varchar
11

高速
tag
varchar
45

速度
area
varchar
45

路口
Describe
varchar
300

形貌信息
  (3)城市数据表存储城市信息 如表4-4所示。
  

  
表4-4  城市数据表

  
列名
数据范例
长度
主外键
注释
id
int
11

城市ID
name
varchar
50

城市名称
Tag
varchar
50

标签
Describe
varchar
200

形貌
hot
char
20

城市事故
times
int
11

点击次数
  
  
  5.  系统实现

  5.1  大数据环境搭建

  5.1.1  部署HDFS

  (1)在master服务器上确定存在hadoop安装目录
  [root@master ~]# ls  /usr/cstor/hadoop
  (2)设置JDK安装目录
  编辑文件“/usr/cstor/hadoop/etc/hadoop/hadoop-env.sh”,找到如下一行:
  export JAVA_HOME=${JAVA_HOME}
  将这行内容修改为:
  export JAVA_HOME=/usr/local/jdk1.7.0_79/
  (3) 指定HDFS主节点
  编辑文件“/usr/cstor/hadoop/etc/hadoop/core-site.xml”,将如下内容嵌入此文件里末了两行的<configuration></configuration>标签之间:
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/usr/cstor/hadoop/cloud</value>
  </property>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://master:8020</value>
  </property>
  (4) 在master服务器上格式化主节点:
  [root@master ~]# hdfs  namenode  -format
  统一启动HDFS:
  [root@master ~]#cd /usr/cstor/hadoop
  [root@master hadoop]# sbin/start-dfs.sh
  (5) 通过查看进程的方式验证HDFS启动成功
  [root@master sbin]#  jps #jps查看java进程
  若启动成功,会看到类似的如下信息:
  6208 NameNode
  6862 Jps
  6462 SecondaryNameNode
  
图5-1  Hadoop启动成功结果图

  
  5.1.2  部署Spark集群

  (1) 在master上操纵:确定存在spark。
  [root@master ~]# ls /usr/cstor
  spark/
  [root@master ~]#
  在master机上操纵:进入/usr/cstor目录中。
  [root@master ~]# cd /usr/cstor
  [root@master cstor]#
  进入设置文件目录/usr/cstor/spark/conf, 先拷贝并修改slave.templae为slave。
  [root@master ~]# cd /usr/cstor/spark/conf
  [root@master cstor]# cp  slaves.template slaves
  (2) 在spark-conf.sh中加入JAVA_HOME。
  [root@master cstor]# vim /usr/cstor/spark/sbin/spark-config.sh
  加入以下内容
  export JAVA_HOME=/usr/local/jdk1.7.0_79
  (3) 启动Spark集群。
  [root@master local]# /usr/cstor/spark/sbin/start-all.sh
  
图5-2  Spark启动成功结果图

  5.2  数据可视化

  5.2.1  登录

  用户登录时需要在登录界面输入用户名、密码举行身份认证,要求必须是表单认证、校验。其设置文件中设置了相应的类,当用户登录系统举行身份认证和权限控制时,会在该类中从数据库获取到用户信息及其具有的权限信息,并 且比较用户输入的账号是否存在大概输入的密码与数据源中的密码是否匹配。具体界面图如5-3所示。
  

  
图5-3  登录界面

  5.2.2  交通数据管理

  用户输入用户名和密码可以登录到系统中,在交通管理界面中能够管理交通推荐的信息,可以选择增加大概删减交通,交通推荐管理界面如图5-5所示。
  

  
图5-5  智能交通数据管理

  5.2.3 交通数据分析

  
系统通过对某一城市交通词云的数量举行统计,盘算,在前端界面渲染结果,最终交通大数据展示看板如图5-8所示,图中内容展示的是上海迪士尼交通的分析结果。

  

  
图5-8  智能交通大数据可视化界面

  5.2.4 交通拥堵猜测

  系统通过对某一城市交通拥堵猜测的数量举行统计,盘算,在前端界面渲染结果,最终交通拥堵猜测展示看板如图5-9所示。
  

  
图5-9  智能交通拥堵猜测界面

  

  5.4  本章小结

  本章主要分析了基于大数据的交通信息可视化分析系统开发过程中使用到的技能和具体的实现步骤,这此中主要介绍了基于Spark框架的交通信息可视化分析系统的搭建环境和开发步骤,包罗步伐中的一些Spark集群搭建过程,系统页面介绍等。前端页面采用的是Echarts和html实现。
  6  总结

  6.1  结论

  本文从整体框架出发,对交通数据分析系统举行了筹划和实施。同时,为更好的完成此次的毕业筹划和论文,我们也了解到很多的步伐和步伐代码。该交通数据分析系统具有以下优点:
  (1)这个交通数据分析系统是以Flask开放源码系统布局为基础的,它的核生理念是分层,把所有的工程分别为不同的等级,分层的概念不仅可以简化业务过程的逻辑,降低了冗余的冗余,还可以促进工程具有更强的移植性。
  (2)一个交通数据分析系统理制度定义了很多共同的控制单位,所有的单位都要包罗一个共同的控制单位,如果在各个单位的代码中都有一个共同的控制单位,那么这个单位就会给人一种代码多余的感觉,这样就可以将所有的控制单位分开。
  (3)在先前的实施系统的基础上,采用分页技能来完成多个页面的表现。
  6.2  猜测

  比年来,我国的交通数据分析系统已具有相当大的发展空间,只要能够扩大规模,做好相关的相关业务,其发展远景不可低估。该系统具有精良的视觉结果、运行稳定、易于维修等特点。不外,因为自己的编程程度,这套系统还是需要完善的。
  
  
  
  
  参 考 文 献

  
[1]刘宗明.智能交通管理平台系统的筹划与实现[J].科学技能创新,2023,(05):105-108.

  
[2]骆京铭.城市智能交通管理系统筹划与实现[J].自动化技能与应用,2019,38(06):171-175.

  
[3]张津凡,王鸿鹏.智能交通管控平台重点车辆管理系统的筹划与实现[J].电子技能与软件工程,2018,(24):160-161.

  
[4]张林闯.城市智能交通管理系统的筹划与实现[J].现代经济信息,2015,(24):281-282.

  
[5]Xun Y ,Wujie Z ,Weiqing Y , et al.CAGNet: Coordinated attention guidance network for RGB-T crowd counting[J].Expert Systems With Applications,2024,243122753-.

  
[6]杨晓光,胡仕星月,张梦雅.智能高速公路交通应用技能发展综述[J].中国公路学报,2023,36(10):142-164.DOI:10.19721/j.cnki.1001-7372.2023.10.013

  
[7]孙中廷.基于神经网络智能交通的控制系统筹划[J].电脑与信息技能,2023,31(06):1-4.DOI:10.19414/j.cnki.1005-1228.2023.06.026

  
[8]刘文杰.“智能交通系统”课程思政讲授思考与实践[J].期间汽车,2023,(24):40-42.

  
[9]孙跃男.智能交通系统在道路筹划中的应用[J].黑龙江科学,2023,14(22):141-143.

  
[10]Adnan Z ,Shiyao Z ,Xuetao W , et al.A generalized feature projection scheme for multi-step traffic forecasting[J].Expert Systems With Applications,2024,244122962-.

  
[11]孟爱琴.基于智能交通系统的物流配送路径规划研究[J].中国航务周刊,2023,(46):55-57.

  
[12]贾云飞.智能交通系统中的行人检测与行为分析[J].中国信息化,2023,(09):85-86.

  
[13] 刘明珠, 姜波, 黄峻. 大数据期间下的社会健身房管理[C]// 建设与文化强国相匹配的"健身房强国". 2014.

  

致  谢




免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4