999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于SparkStreaming的車輛軌跡實(shí)時(shí)處理實(shí)現(xiàn)研究

2021-01-12 11:15:25馬晟劉雅倫陳曉男沈漪
科技資訊 2021年32期
關(guān)鍵詞:系統(tǒng)

馬晟 劉雅倫 陳曉男 沈漪

摘? 要:城市的發(fā)展使得運(yùn)營車輛日益增長,車輛調(diào)度愈發(fā)困難,傳統(tǒng)系統(tǒng)無法滿足現(xiàn)有眾多車輛的監(jiān)控調(diào)度與運(yùn)營。該程序基于大數(shù)據(jù)流處理系統(tǒng),實(shí)現(xiàn)了大批量的車輛信息監(jiān)測和實(shí)時(shí)處理以及車輛的精細(xì)監(jiān)控與軌跡回放。可用于網(wǎng)約車、公交車以及貨運(yùn)集團(tuán)的調(diào)度中心進(jìn)行實(shí)時(shí)監(jiān)控和訂單把控,以提高車輛調(diào)度的靈活性,達(dá)到最優(yōu)調(diào)度、減少成本的效果。

關(guān)鍵詞:SparkStreaming? 大數(shù)據(jù)? 軌跡回放? 交通

中圖分類號:TP31? ? ? ?文獻(xiàn)標(biāo)識碼:A

Abstract: With the development of the city, the number of operating vehicles is increasing, and the vehicle scheduling is becoming more and more difficult. The traditional system can not meet the monitoring, scheduling and operation of many existing vehicles. Based on the large data stream processing system, the program realizes a large number of vehicle information monitoring and real-time processing, as well as vehicle fine monitoring and track playback. It can be used for real-time monitoring and order control in the dispatching center of online car hailing, buses and freight groups, so as to improve the flexibility of vehicle scheduling, achieve optimal scheduling and reduce costs.

Key Words:SparkStreaming;Bigdata;Track playback;Traffic

隨著城市的發(fā)展,運(yùn)營車輛日益增長,車輛調(diào)度愈發(fā)困難,傳統(tǒng)系統(tǒng)無法滿足現(xiàn)有眾多車輛的監(jiān)控調(diào)度與運(yùn)營。基于大數(shù)據(jù)系統(tǒng)的車輛實(shí)時(shí)監(jiān)控與調(diào)度需求隨著大數(shù)據(jù)技術(shù)的日趨發(fā)展有了實(shí)現(xiàn)的可能。

1? 數(shù)據(jù)處理系統(tǒng)的設(shè)計(jì)

該系統(tǒng)實(shí)現(xiàn)對海量車輛軌跡數(shù)據(jù)的采集、存儲、實(shí)時(shí)處理、軌跡回放功能。軌跡數(shù)據(jù)在蓋亞數(shù)據(jù)平臺申請達(dá)到,編程模擬產(chǎn)生實(shí)時(shí)數(shù)據(jù)流,經(jīng)大數(shù)據(jù)平臺采集處理存入數(shù)據(jù)庫,然后在前臺顯示實(shí)時(shí)的車輛軌跡[1]。

1.1系統(tǒng)整體架構(gòu)

基于系功能需求,該系統(tǒng)的總體設(shè)計(jì)為:先由車輛端上傳坐標(biāo)數(shù)據(jù)(編程模擬產(chǎn)生),flume多源采集,然后寫入kafka的topic,接著通過SparkStreming實(shí)時(shí)消費(fèi)kafka,再根據(jù)訂單存入redis,最后實(shí)現(xiàn)訂單數(shù)據(jù)列表生成以及訂單車輛軌跡回放[2]。它異于傳統(tǒng)數(shù)據(jù)系統(tǒng)的地方是:采用大數(shù)據(jù)流處理框架,具有高吞吐率、高負(fù)載、高可用性、實(shí)時(shí)性高的優(yōu)點(diǎn)[3]。整個(gè)系統(tǒng)的邏輯實(shí)現(xiàn)如圖1所示。

1.2數(shù)據(jù)回放模塊設(shè)計(jì)

為了模擬真實(shí)業(yè)務(wù)場景,該程序基于蓋亞平臺坐標(biāo)數(shù)據(jù)通過數(shù)據(jù)回放模塊模擬數(shù)據(jù)流產(chǎn)生[4]。使用python讀出坐標(biāo)數(shù)據(jù),用多線程并行輸出,從而模擬實(shí)際場景中車輛移動匯報(bào)的坐標(biāo)打點(diǎn)數(shù)據(jù),達(dá)到采集流數(shù)據(jù)的需求[5]。

核心代碼邏輯如下所示。

#坐標(biāo)數(shù)據(jù)文件寫入

def consumer(queue, writer, csv_file):

while True:

line = queue.get()

deal_line(line, writer, csv_file)

queue.task_done()

#流數(shù)據(jù)文件生成

def producer(queue):

with open(‘test.txt’, ‘r’) as f:

for line in f:

queue.put(line)

queue = JoinableQueue(8)

pc = Process(target=producer, args=(queue,))

for _ in range(cpu_count()):

c1 = Process(target=consumer, args=(queue, writer, csv_file))

#等待生產(chǎn)者進(jìn)程全部生成完畢

pc.join()

#等待所有數(shù)據(jù)全部處理完畢

queue.join()

1.3數(shù)據(jù)采集消費(fèi)模塊設(shè)計(jì)

該模塊實(shí)現(xiàn)了通過flume采集車輛軌跡流數(shù)據(jù),進(jìn)而推送到消息隊(duì)列kafka中。

首先進(jìn)行flume數(shù)據(jù)采集,在采集過程中通過集群形式達(dá)到大數(shù)據(jù)量及多源數(shù)據(jù)采集情況下的負(fù)載均衡及并行采集。設(shè)置flume靜態(tài)攔截器實(shí)現(xiàn)在采集到的數(shù)據(jù)的頭數(shù)據(jù)中插入自定義的key-value鍵值對以區(qū)分不同數(shù)據(jù)源,主要配置如下:

a1.sources.r1.interceptors.i1.type = static? ? ? ? ? #設(shè)置靜態(tài)攔截器

a1.sources.r1.interceptors.i1.key = type

a1.sources.r1.interceptors.i1.value = test_gps_topic#不同的數(shù)據(jù)源取不同的名稱

接著通過kafka集群接收flume采集的大量數(shù)據(jù),以實(shí)現(xiàn)數(shù)據(jù)高吞吐率、高可用數(shù)據(jù)傳遞以及數(shù)據(jù)的實(shí)時(shí)處理,同時(shí)通過不同的topic保證不同數(shù)據(jù)流的分區(qū)。

flume監(jiān)聽的文件數(shù)據(jù)發(fā)送到此kafka的主題當(dāng)中,主要配置如下:

a1.sinks.k1.topic = test_gps_topic? ? ? ? ? ?#與前面的靜態(tài)攔截器value值配置相一致

1.4數(shù)據(jù)實(shí)時(shí)處理模塊設(shè)計(jì)

該模塊通過sparkStreaming程序?qū)崿F(xiàn)消費(fèi)kafka中的數(shù)據(jù)存到HBase中,其中的GPS位置經(jīng)緯度信息保存到redis中,存為后續(xù)實(shí)時(shí)監(jiān)控以及軌跡回放的數(shù)據(jù)源[6]。核心邏輯的Scala代碼如下:

//從kafka里消費(fèi)數(shù)據(jù),把經(jīng)緯度信息存到redis

val result: InputDStream[ConsumerRecord[String, String]] = Tools.getStreamingContextFromHBase

(streamingContext,kafkaParams,topics,group,"(.*)gps_topic")

result.foreachRDD(eachRdd =>{

eachRdd.foreachPartition(eachPartition =>{

val connection: Connection = HBaseUtil.getConnection

val jedis: Jedis = JedisUtil.getJedis

eachPartition.foreach(record =>{

Tools.saveToRedis(connection,jedis,record)

})

1.5軌跡回放模塊設(shè)計(jì)

得益于redis內(nèi)存數(shù)據(jù)庫高性能以及可持久化的穩(wěn)定性,該模塊實(shí)現(xiàn)回放每個(gè)訂單車輛軌跡同時(shí)并發(fā)實(shí)時(shí)讀取到前端,通過高德地圖提供的地圖api接口,訂單號為同一個(gè)key的value坐標(biāo)數(shù)據(jù)軌跡點(diǎn)按時(shí)間順序呈現(xiàn)在地圖上,從而監(jiān)控每條車輛訂單的車輛軌跡情況[7]。

2? 實(shí)驗(yàn)驗(yàn)證

2.1 實(shí)驗(yàn)環(huán)境

該次實(shí)驗(yàn)采用了一主二從的CDH集群,機(jī)器配置如圖2所示,集群角色配置如圖3所示。

2.2數(shù)據(jù)集

此次實(shí)驗(yàn)數(shù)據(jù)集來自滴滴蓋亞數(shù)據(jù)平臺的開放數(shù)據(jù),形如表1所示。

首先是數(shù)據(jù)回放模塊的驗(yàn)證,通過多線程輸出,flume采集源目錄,數(shù)據(jù)如期以多訂單并發(fā)每秒三條的流數(shù)據(jù)形式生成。其次是數(shù)據(jù)實(shí)時(shí)處理模塊,經(jīng)檢查redis數(shù)據(jù)庫,回放的流數(shù)據(jù)以秒級單位處理寫入到數(shù)據(jù)庫。最后是數(shù)據(jù)回放模塊的驗(yàn)證,經(jīng)前端程序的讀取,車輛軌跡坐標(biāo)成功呈現(xiàn)在了高德地圖上。

3 結(jié)語

該系統(tǒng)實(shí)現(xiàn)了大規(guī)模軌跡數(shù)據(jù)的處理,數(shù)據(jù)的吞吐量、延遲性、精準(zhǔn)度已達(dá)到預(yù)期。程序通過Python模擬車輛軌跡數(shù)據(jù)流的產(chǎn)生,然后通過flume和kafka采集消費(fèi)數(shù)據(jù),sparkStreaming處理數(shù)據(jù)流,完成了模擬現(xiàn)實(shí)生活多車輛多數(shù)據(jù)流場景的數(shù)據(jù)產(chǎn)生、處理與軌跡回放。目前程序還停留在雛形階段,未來將在耦合度、靈活度上做出提高。

參考文獻(xiàn)

[1]? 楊小潤.基于深度學(xué)習(xí)的車輛軌跡特征識別與分析[D].南京:南京郵電大學(xué),2020.

[2]? 陸鍵,王可,蔣愚明.基于車輛行駛軌跡的道路不良駕駛行為實(shí)時(shí)辨識方法[J].交通運(yùn)輸工程學(xué)報(bào),2020,20(6):227-235.

[3] 潘偉博,汪海濤,姜瑛,等.Hadoop集群異常節(jié)點(diǎn)實(shí)時(shí)檢測與診斷算法[J].陜西理工大學(xué)學(xué)報(bào):自然科學(xué)版,2021,37(4):24-31.

[4]? 鮑裕麟.深度學(xué)習(xí)應(yīng)用場景下的HDFS性能優(yōu)化[D].合肥:中國科學(xué)技術(shù)大學(xué),2021.

[5] 謝楓,婁靜濤,趙凱,等.基于行為識別和曲率約束的車輛軌跡預(yù)測方法研究[J].汽車工程,2019,41(9):1036-1042.

[6] 柯杰.基于SparkStreaming日志實(shí)時(shí)監(jiān)測系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].南京:東南大學(xué),2017.

[7] 苗莉.大數(shù)據(jù)云計(jì)算環(huán)境下的數(shù)據(jù)安全[J].科技資訊,2021,19(2):31-33.

猜你喜歡
系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
基于UG的發(fā)射箱自動化虛擬裝配系統(tǒng)開發(fā)
半沸制皂系統(tǒng)(下)
FAO系統(tǒng)特有功能分析及互聯(lián)互通探討
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統(tǒng) 德行天下
PLC在多段調(diào)速系統(tǒng)中的應(yīng)用
主站蜘蛛池模板: 国产超碰在线观看| 亚洲人成人无码www| 欧美a在线看| 国产真实乱了在线播放| 国产精品无码AV片在线观看播放| 色精品视频| 99久久精品无码专区免费| 特黄日韩免费一区二区三区| 日韩高清成人| 人妻精品全国免费视频| 国产熟女一级毛片| jijzzizz老师出水喷水喷出| 一级毛片免费的| 中文字幕在线观看日本| 国产成人h在线观看网站站| 日韩一区二区三免费高清| 欧美另类一区| 国产香蕉一区二区在线网站| 97视频免费看| 久久精品无码一区二区国产区 | 久久精品无码中文字幕| 国产欧美日韩在线一区| 99激情网| 亚洲一区二区三区中文字幕5566| 国产精品亚洲专区一区| 夜夜爽免费视频| 国产成人高清在线精品| 日韩人妻精品一区| 波多野衣结在线精品二区| 亚洲区第一页| 麻豆精品在线播放| 在线亚洲精品福利网址导航| 一区二区三区精品视频在线观看| 亚洲午夜国产精品无卡| 国产免费人成视频网| lhav亚洲精品| 综合色在线| 综合久久久久久久综合网| 国产精品高清国产三级囯产AV| 凹凸国产分类在线观看| 久久国产精品娇妻素人| 国产午夜一级淫片| 色婷婷狠狠干| 亚洲日韩精品综合在线一区二区| 69av在线| 国产迷奸在线看| 国产中文在线亚洲精品官网| 久久视精品| 亚洲人成色77777在线观看| 伊人91视频| 色国产视频| 亚洲人人视频| 18黑白丝水手服自慰喷水网站| 国产欧美日韩18| 情侣午夜国产在线一区无码| 91麻豆精品国产91久久久久| 精品国产美女福到在线直播| 制服丝袜 91视频| 九色视频在线免费观看| 国产精品真实对白精彩久久| 日韩第九页| 91精品亚洲| 国产在线麻豆波多野结衣| 亚洲成网777777国产精品| 国产精品深爱在线| 日本免费一区视频| 91亚瑟视频| 亚洲综合18p| 国产在线第二页| 亚洲成a人在线播放www| 久久毛片免费基地| 国产sm重味一区二区三区| 欧美日韩一区二区在线播放| 干中文字幕| 伊人成人在线视频| 好吊色妇女免费视频免费| 久久伊伊香蕉综合精品| 亚洲人精品亚洲人成在线| 91精品专区国产盗摄| 黄色a一级视频| 日韩精品久久久久久久电影蜜臀| 成人国产精品网站在线看|