亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種快速精準(zhǔn)的交通大數(shù)據(jù)清洗方法與流程

文檔序號(hào):12122026閱讀:590來(lái)源:國(guó)知局
一種快速精準(zhǔn)的交通大數(shù)據(jù)清洗方法與流程

本發(fā)明涉及交通數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種快速精準(zhǔn)的交通大數(shù)據(jù)清洗方法。



背景技術(shù):

隨著城市建設(shè)的發(fā)展和人們消費(fèi)水平的提高,汽車(chē)已經(jīng)成為人們生活中不可或缺的工具,而隨之產(chǎn)生的海量交通數(shù)據(jù)的處理也成為一個(gè)亟待解決的問(wèn)題。為了實(shí)現(xiàn)快速實(shí)時(shí)的交通監(jiān)管和預(yù)測(cè)分析,實(shí)現(xiàn)交通歷史數(shù)據(jù)的分析和查詢,需要對(duì)不同來(lái)源的交通數(shù)據(jù)進(jìn)行清洗過(guò)濾,并提取異常數(shù)據(jù)以供人工處理,對(duì)處理的結(jié)果采用適當(dāng)?shù)拇鎯?chǔ)方式分別存儲(chǔ),并提供數(shù)據(jù)訪問(wèn)接口,以實(shí)現(xiàn)交通數(shù)據(jù)的實(shí)時(shí)分析和查詢功能。

目前,交通大數(shù)據(jù)清洗方法在對(duì)實(shí)時(shí)數(shù)據(jù)進(jìn)行清洗,采用的方法是:直接將接收到的RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)流交給spark streaming進(jìn)行處理,spark streaming按照清洗規(guī)則要求進(jìn)行車(chē)輛軌跡清洗、過(guò)車(chē)流量統(tǒng)計(jì)和異常提取。對(duì)于離線數(shù)據(jù)清洗,采用spark編程模型,按照清洗規(guī)則要求將RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)進(jìn)行連接,提取有效字段,從而提取出車(chē)輛軌跡,統(tǒng)計(jì)出各采集點(diǎn)的過(guò)車(chē)流量,并分離出異常數(shù)據(jù)供人工處理。

該方法存在以下問(wèn)題:對(duì)于實(shí)時(shí)數(shù)據(jù)清洗,由于RFID設(shè)備和抓拍設(shè)備采集到的數(shù)據(jù)是實(shí)時(shí)傳送給spark streaming進(jìn)行處理的,spark streaming任務(wù)在提交以后必須持續(xù)等待,直到接收到該時(shí)間段采集到的所有數(shù)據(jù)才會(huì)進(jìn)行下一步的處理,這樣就導(dǎo)致大數(shù)據(jù)平臺(tái)運(yùn)行效率嚴(yán)重降低。對(duì)于離線數(shù)據(jù)處理,由于數(shù)據(jù)量巨大,在根據(jù)鍵值做匹配連接的時(shí)候往往會(huì)導(dǎo)致內(nèi)存壓力大,處理速度慢的后果,從而影響程序的性能。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的在于提供一種快速精準(zhǔn)的交通大數(shù)據(jù)清洗方法,從而解決現(xiàn)有技術(shù)中存在的前述問(wèn)題。

為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下:

一種快速精準(zhǔn)的交通大數(shù)據(jù)清洗方法,包括實(shí)時(shí)數(shù)據(jù)的處理方法和歷史數(shù)據(jù)的處理方法;

所述實(shí)時(shí)數(shù)據(jù)的處理方法是針對(duì)實(shí)時(shí)的RFID和抓拍數(shù)據(jù),采取Spark Streaming流處理技術(shù),從Kafka中按照時(shí)間窗口不斷提取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,完成數(shù)據(jù)的比對(duì)、統(tǒng)計(jì)和異常處理;

所述歷史數(shù)據(jù)的處理方法,采用Spark內(nèi)存處理技術(shù),從HDFS中讀取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,對(duì)數(shù)據(jù)進(jìn)行比對(duì)、統(tǒng)計(jì)和異常處理。

優(yōu)選地,所述從Kafka中按照時(shí)間窗口不斷提取數(shù)據(jù),具體為,按照設(shè)定的時(shí)間間隔從持續(xù)的Kafka分布式消息隊(duì)列中獲取RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù),每次累計(jì)獲取設(shè)定時(shí)間段以內(nèi)的數(shù)據(jù)。

優(yōu)選地,所述實(shí)時(shí)數(shù)據(jù)的處理方法中,所述按照數(shù)據(jù)清洗規(guī)則,完成數(shù)據(jù)的比對(duì)、統(tǒng)計(jì)和異常處理,具體包括車(chē)輛軌跡的清洗、過(guò)車(chē)流量的統(tǒng)計(jì)和異常數(shù)據(jù)的提??;

所述車(chē)輛軌跡的清洗,按照如下步驟進(jìn)行實(shí)施:

A1,根據(jù)RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)的公共字段,包括車(chē)牌號(hào)、時(shí)間、采集點(diǎn)名稱和采集方向四個(gè)字段,將兩種數(shù)據(jù)記錄進(jìn)行連接;

A2,根據(jù)Spark Streaming提供的比對(duì)函數(shù),對(duì)車(chē)牌號(hào)和時(shí)間字符串進(jìn)行逆序處理,并根據(jù)比對(duì)規(guī)則對(duì)連接的RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)進(jìn)行過(guò)濾,得到車(chē)輛經(jīng)過(guò)采集點(diǎn)時(shí)的軌跡記錄,即車(chē)輛軌跡清洗結(jié)果;

A3,將所述車(chē)輛軌跡清洗結(jié)果存儲(chǔ)在HBase中,將HBase劃分為多個(gè)不同的域,以車(chē)牌號(hào)和時(shí)間字符串的逆序字符串為鍵進(jìn)行存儲(chǔ)。

優(yōu)選地,所述過(guò)車(chē)流量的統(tǒng)計(jì),按照如下步驟進(jìn)行實(shí)施:

B1,將每個(gè)時(shí)間段內(nèi)接收到的RFID過(guò)車(chē)數(shù)據(jù)轉(zhuǎn)換為以采集點(diǎn)字段為鍵的鍵值對(duì)形式;

B2,根據(jù)Spark Streaming分布式大數(shù)據(jù)處理的原理,對(duì)具有相同鍵的數(shù)據(jù)記錄進(jìn)行計(jì)數(shù),然后對(duì)每個(gè)采集點(diǎn)的統(tǒng)計(jì)結(jié)果以設(shè)定的時(shí)間間隔進(jìn)行求和,得到各個(gè)采集點(diǎn)在相應(yīng)時(shí)間段內(nèi)的過(guò)車(chē)流量記錄;

B3,使用內(nèi)存數(shù)據(jù)庫(kù)對(duì)各個(gè)采集點(diǎn)的過(guò)車(chē)流量進(jìn)行存儲(chǔ)。

優(yōu)選地,所述異常數(shù)據(jù)的提取,按照如下步驟進(jìn)行實(shí)施:

C1,根據(jù)RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)的公共字段,包括車(chē)牌號(hào)、時(shí)間、采集點(diǎn)名稱和采集方向四個(gè)字段,將兩種數(shù)據(jù)記錄進(jìn)行連接;

C2,根據(jù)異常數(shù)據(jù)的判定規(guī)則分別對(duì)RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)進(jìn)行過(guò)濾,提取出異常數(shù)據(jù);

C3,采用關(guān)系型數(shù)據(jù)庫(kù)進(jìn)行存儲(chǔ)。

優(yōu)選地,所述歷史數(shù)據(jù)的處理方法中,所述按照數(shù)據(jù)清洗規(guī)則,對(duì)數(shù)據(jù)進(jìn)行比對(duì)、統(tǒng)計(jì)和異常處理,具體為車(chē)輛軌跡的清洗、過(guò)車(chē)流量的統(tǒng)計(jì)和異常數(shù)據(jù)的提?。?/p>

所述車(chē)輛軌跡的清洗,按照如下步驟進(jìn)行實(shí)施:

D1,通過(guò)車(chē)牌號(hào)、時(shí)間、采集點(diǎn)名稱、方向四個(gè)字段的信息將RFID過(guò)車(chē)數(shù)據(jù)和視頻抓拍數(shù)據(jù)進(jìn)行連接;

D2,對(duì)車(chē)牌號(hào)和時(shí)間字符串進(jìn)行逆序處理,使用車(chē)牌顏色和通行時(shí)間字段對(duì)數(shù)據(jù)進(jìn)行過(guò)濾,得到車(chē)輛軌跡數(shù)據(jù);

D3,以車(chē)牌號(hào)和時(shí)間字符串的逆序字符串為鍵,將所述車(chē)輛軌跡數(shù)據(jù)存儲(chǔ)在HBase中。

優(yōu)選地,所述車(chē)輛軌跡的清洗過(guò)程中,首先將RFID數(shù)據(jù)、抓拍數(shù)據(jù)和設(shè)備信息表分別封裝為相應(yīng)的RDD,根據(jù)設(shè)備的IP地址,進(jìn)行數(shù)據(jù)連接,得到帶有方向字段的RFID數(shù)據(jù)RDD和帶有方向的抓拍數(shù)據(jù)RDD;然后對(duì)兩類數(shù)據(jù)RDD分別進(jìn)行轉(zhuǎn)換,得到鍵值對(duì)形式的RDD,以方便比對(duì)連接操作的進(jìn)行,其中鍵為需要進(jìn)行比對(duì)的字段組成的字符串;最后,將兩種數(shù)據(jù)的RDD根據(jù)鍵值進(jìn)行比對(duì)并連接,采用時(shí)間完整性、號(hào)牌顏色一致性、字段的完整性等規(guī)則要求對(duì)數(shù)據(jù)進(jìn)行過(guò)濾,得到正確的數(shù)據(jù)軌跡。

優(yōu)選地,所述過(guò)車(chē)流量的統(tǒng)計(jì),按照如下步驟進(jìn)行實(shí)施:

E1,將RFID過(guò)車(chē)數(shù)據(jù)轉(zhuǎn)換為以采集點(diǎn)字段和精確至小時(shí)的時(shí)間字符串為鍵的鍵值對(duì)形式;

E2,根據(jù)Spark分布式大數(shù)據(jù)處理的原理,對(duì)具有相同鍵的數(shù)據(jù)記錄進(jìn)行計(jì)數(shù),得到各個(gè)采集點(diǎn)在相應(yīng)時(shí)間段的過(guò)車(chē)流量記錄;

E3,使用關(guān)系型數(shù)據(jù)庫(kù)對(duì)各個(gè)采集點(diǎn)的過(guò)車(chē)流量統(tǒng)計(jì)結(jié)果進(jìn)行存儲(chǔ)。

優(yōu)選地,所述異常數(shù)據(jù)的類型包括:數(shù)據(jù)字段不完整、數(shù)據(jù)缺失和數(shù)據(jù)信息不一致。

優(yōu)選地,所述異常數(shù)據(jù)的提取,按照如下步驟進(jìn)行實(shí)施:

F1,通過(guò)車(chē)牌號(hào)碼、采集點(diǎn)名稱、采集方向和通過(guò)時(shí)間四個(gè)字段的信息將RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)進(jìn)行連接;

F2,根據(jù)數(shù)據(jù)異常類型,首先判斷RFID數(shù)據(jù)是否缺失,如果存在RFID數(shù)據(jù),則判斷RFID數(shù)據(jù)中顏色字段是否存在、抓拍數(shù)據(jù)中抓拍圖片鏈接是否存在,如果字段完整,則判斷RFID數(shù)據(jù)和抓拍數(shù)據(jù)中號(hào)牌顏色是否一致,最后,將提取出的異常數(shù)據(jù)存儲(chǔ)到MySQL數(shù)據(jù)庫(kù)中,并標(biāo)識(shí)異常類型。

本發(fā)明的有益效果是:本發(fā)明實(shí)施例提供的一種快速精準(zhǔn)的交通大數(shù)據(jù)清洗方法,對(duì)于實(shí)時(shí)的RFID和抓拍數(shù)據(jù),采用Spark Streaming流處理技術(shù),利用Kafka提供數(shù)據(jù)緩存,從Kafka中按照時(shí)間窗口不斷提取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,完成數(shù)據(jù)的比對(duì)、統(tǒng)計(jì)和異常處理;對(duì)于離線的批量累積數(shù)據(jù),采用Spark內(nèi)存處理技術(shù),從HDFS中讀取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,對(duì)數(shù)據(jù)進(jìn)行比對(duì)、統(tǒng)計(jì)和異常處理,通過(guò)對(duì)比對(duì)算法的優(yōu)化,提高程序的性能和數(shù)據(jù)清洗結(jié)果的準(zhǔn)確性。實(shí)現(xiàn)了對(duì)城市交通監(jiān)控管理過(guò)程中產(chǎn)生的RFID和抓拍等數(shù)據(jù)快速精準(zhǔn)地進(jìn)行車(chē)輛軌跡清洗、異常數(shù)據(jù)處理、車(chē)流量統(tǒng)計(jì),進(jìn)而實(shí)現(xiàn)了對(duì)交通數(shù)據(jù)資源的加工處理,保障交通大數(shù)據(jù)資源的存儲(chǔ)和利用。

附圖說(shuō)明

圖1是實(shí)時(shí)數(shù)據(jù)清洗流程示意圖;

圖2是離線歷史數(shù)據(jù)清洗流程示意圖;

圖3是車(chē)輛軌跡清洗模塊RDD依賴關(guān)系示意圖。

具體實(shí)施方式

為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施方式僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

本發(fā)明實(shí)施例提供了一種快速精準(zhǔn)的交通大數(shù)據(jù)清洗方法,包括實(shí)時(shí)數(shù)據(jù)的處理方法和歷史數(shù)據(jù)的處理方法;

所述實(shí)時(shí)數(shù)據(jù)的處理方法是針對(duì)實(shí)時(shí)的RFID和抓拍數(shù)據(jù),采取Spark Streaming流處理技術(shù),從Kafka中按照時(shí)間窗口不斷提取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,完成數(shù)據(jù)的比對(duì)、統(tǒng)計(jì)和異常處理;

所述歷史數(shù)據(jù)的處理方法,采用Spark內(nèi)存處理技術(shù),從HDFS中讀取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,對(duì)數(shù)據(jù)進(jìn)行比對(duì)、統(tǒng)計(jì)和異常處理。

上述方法中,實(shí)時(shí)數(shù)據(jù)的清洗是針對(duì)RFID設(shè)備和攝像設(shè)備實(shí)時(shí)獲取到的數(shù)據(jù)信息,而歷史數(shù)據(jù)的清洗是針對(duì)歷史累積的RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)。因?yàn)閮煞N數(shù)據(jù)的特點(diǎn)不同,前者數(shù)據(jù)量相對(duì)較少,但是處理的實(shí)時(shí)性要求較高;后者的數(shù)據(jù)量巨大,沒(méi)有實(shí)時(shí)性要求,但是要求能高效準(zhǔn)確的完成對(duì)海量數(shù)據(jù)的清洗。

本發(fā)明實(shí)施例提供的方法,采用基于Hadoop定制的大數(shù)據(jù)平臺(tái)提供分布式的數(shù)據(jù)處理和存儲(chǔ)。對(duì)于實(shí)時(shí)的RFID和抓拍數(shù)據(jù),采取Spark Streaming流處理技術(shù),從Kafka中按照時(shí)間窗口不斷提取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,完成數(shù)據(jù)的比對(duì)、統(tǒng)計(jì)和異常處理。對(duì)于離線的批量累積數(shù)據(jù),采用Spark內(nèi)存處理技術(shù),從HDFS中讀取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,對(duì)數(shù)據(jù)進(jìn)行比對(duì)、統(tǒng)計(jì)和異常處理。

對(duì)于實(shí)時(shí)數(shù)據(jù)的處理,可參見(jiàn)圖1所示。

離線數(shù)據(jù)清洗依賴于spark編程模型,采用Spark on Yarn作為程序的運(yùn)行平臺(tái),通過(guò)分布式編程實(shí)現(xiàn)快速精準(zhǔn)的交通大數(shù)據(jù)清洗過(guò)程。

具體的使用Spark對(duì)離線數(shù)據(jù)進(jìn)行清洗的過(guò)程如圖2所示。

上述方法中,對(duì)于實(shí)時(shí)的RFID和抓拍數(shù)據(jù),采用Spark Streaming流處理技術(shù),利用Kafka提供數(shù)據(jù)緩存,從Kafka中按照時(shí)間窗口不斷提取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,完成數(shù)據(jù)的比對(duì)、統(tǒng)計(jì)和異常處理;對(duì)于離線的批量累積數(shù)據(jù),采用Spark內(nèi)存處理技術(shù),從HDFS中讀取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,對(duì)數(shù)據(jù)進(jìn)行比對(duì)、統(tǒng)計(jì)和異常處理,通過(guò)對(duì)比對(duì)算法的優(yōu)化,提高程序的性能和數(shù)據(jù)清洗結(jié)果的準(zhǔn)確性。實(shí)現(xiàn)了對(duì)城市交通監(jiān)控管理過(guò)程中產(chǎn)生的RFID和抓拍等數(shù)據(jù)快速精準(zhǔn)地進(jìn)行車(chē)輛軌跡清洗、異常數(shù)據(jù)處理、車(chē)流量統(tǒng)計(jì),進(jìn)而實(shí)現(xiàn)了對(duì)交通數(shù)據(jù)資源的加工處理,保障交通大數(shù)據(jù)資源的存儲(chǔ)和利用。

本發(fā)明實(shí)施例中,所述從Kafka中按照時(shí)間窗口不斷提取數(shù)據(jù),具體為,按照設(shè)定的時(shí)間間隔從持續(xù)的Kafka分布式消息隊(duì)列中獲取RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù),每次累計(jì)獲取設(shè)定時(shí)間段以內(nèi)的數(shù)據(jù)。

本發(fā)明實(shí)施例中,時(shí)間間隔可以為5分鐘,時(shí)間窗口可以為10分鐘。

在本發(fā)明的一個(gè)優(yōu)選實(shí)施例中,所述實(shí)時(shí)數(shù)據(jù)的處理方法中,所述按照數(shù)據(jù)清洗規(guī)則,完成數(shù)據(jù)的比對(duì)、統(tǒng)計(jì)和異常處理,具體包括車(chē)輛軌跡的清洗、過(guò)車(chē)流量的統(tǒng)計(jì)和異常數(shù)據(jù)的提?。?/p>

所述車(chē)輛軌跡的清洗,按照如下步驟進(jìn)行實(shí)施:

A1,根據(jù)RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)的公共字段,包括車(chē)牌號(hào)、時(shí)間、采集點(diǎn)名稱和采集方向四個(gè)字段,將兩種數(shù)據(jù)記錄進(jìn)行連接;

A2,根據(jù)Spark Streaming提供的比對(duì)函數(shù),對(duì)車(chē)牌號(hào)和時(shí)間字符串進(jìn)行逆序處理,并根據(jù)比對(duì)規(guī)則對(duì)連接的RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)進(jìn)行過(guò)濾,得到車(chē)輛經(jīng)過(guò)采集點(diǎn)時(shí)的軌跡記錄,即車(chē)輛軌跡清洗結(jié)果;

A3,將所述車(chē)輛軌跡清洗結(jié)果存儲(chǔ)在HBase中,將HBase劃分為多個(gè)不同的域,以車(chē)牌號(hào)和時(shí)間字符串的逆序字符串為鍵進(jìn)行存儲(chǔ)。

上述方法中,通過(guò)對(duì)車(chē)牌號(hào)和時(shí)間字符串進(jìn)行逆序處理,減小比對(duì)字段具有相同前綴的概率,這樣可以大大減小字符串之間兩兩比較的次數(shù),從而提高比對(duì)的效率。

由于車(chē)輛軌跡數(shù)據(jù)量很大,同時(shí)要進(jìn)行海量數(shù)據(jù)的高效查詢,所以本發(fā)明實(shí)施例中,將車(chē)輛軌跡清洗結(jié)果存儲(chǔ)在HBase中,為提高清洗結(jié)果的查詢效率,將HBase劃分為1000個(gè)不同的域,以車(chē)牌號(hào)和時(shí)間字符串的逆序字符串為鍵進(jìn)行存儲(chǔ)。

在本發(fā)明的一個(gè)優(yōu)選實(shí)施例中,所述過(guò)車(chē)流量的統(tǒng)計(jì),可以按照如下步驟進(jìn)行實(shí)施:

B1,將每個(gè)時(shí)間段內(nèi)接收到的RFID過(guò)車(chē)數(shù)據(jù)轉(zhuǎn)換為以采集點(diǎn)字段為鍵的鍵值對(duì)形式;

B2,根據(jù)Spark Streaming分布式大數(shù)據(jù)處理的原理,對(duì)具有相同鍵的數(shù)據(jù)記錄進(jìn)行計(jì)數(shù),然后對(duì)每個(gè)采集點(diǎn)的統(tǒng)計(jì)結(jié)果以設(shè)定的時(shí)間間隔進(jìn)行求和,得到各個(gè)采集點(diǎn)在相應(yīng)時(shí)間段內(nèi)的過(guò)車(chē)流量記錄;

B3,使用內(nèi)存數(shù)據(jù)庫(kù)對(duì)各個(gè)采集點(diǎn)的過(guò)車(chē)流量進(jìn)行存儲(chǔ)。

過(guò)車(chē)流量統(tǒng)計(jì)分別統(tǒng)計(jì)在一個(gè)時(shí)間窗口內(nèi)經(jīng)過(guò)每個(gè)采集點(diǎn)的車(chē)輛數(shù)。為了能夠進(jìn)行快速的讀寫(xiě)或者查詢等處理,使用內(nèi)存數(shù)據(jù)庫(kù)對(duì)各個(gè)采集點(diǎn)的過(guò)車(chē)流量進(jìn)行存儲(chǔ),在進(jìn)行過(guò)車(chē)流量查詢時(shí),只需要在內(nèi)存中進(jìn)行一次累加計(jì)算即可,提高了過(guò)車(chē)流量統(tǒng)計(jì)的實(shí)時(shí)性。

本發(fā)明中,所述異常數(shù)據(jù)的提取,可以按照如下步驟進(jìn)行實(shí)施:

C1,根據(jù)RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)的公共字段,包括車(chē)牌號(hào)、時(shí)間、采集點(diǎn)名稱和采集方向四個(gè)字段,將兩種數(shù)據(jù)記錄進(jìn)行連接;

C2,根據(jù)異常數(shù)據(jù)的判定規(guī)則分別對(duì)RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)進(jìn)行過(guò)濾,提取出異常數(shù)據(jù);

C3,采用關(guān)系型數(shù)據(jù)庫(kù)進(jìn)行存儲(chǔ)。

由于可能存在數(shù)據(jù)缺失、或者不同類型數(shù)據(jù)信息不一致的情況,需要提取出異常數(shù)據(jù),以供審計(jì)、人工審核使用。異常數(shù)據(jù)的提取首先通過(guò)一些公共字段將RFID過(guò)車(chē)數(shù)據(jù)和視頻抓拍數(shù)據(jù)進(jìn)行連接;然后,根據(jù)異常數(shù)據(jù)的判定規(guī)則分別對(duì)RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)進(jìn)行過(guò)濾,提取出異常數(shù)據(jù)。由于異常數(shù)據(jù)的數(shù)據(jù)量有限,可以采用關(guān)系型數(shù)據(jù)庫(kù)進(jìn)行存儲(chǔ)。

本發(fā)明的一個(gè)優(yōu)選實(shí)施例中,所述歷史數(shù)據(jù)的處理方法中,所述按照數(shù)據(jù)清洗規(guī)則,對(duì)數(shù)據(jù)進(jìn)行比對(duì)、統(tǒng)計(jì)和異常處理,具體包括車(chē)輛軌跡的清洗、過(guò)車(chē)流量的統(tǒng)計(jì)和異常數(shù)據(jù)的提?。?/p>

所述車(chē)輛軌跡的清洗,按照如下步驟進(jìn)行實(shí)施:

D1,通過(guò)車(chē)牌號(hào)、時(shí)間、采集點(diǎn)名稱、方向四個(gè)字段的信息將RFID過(guò)車(chē)數(shù)據(jù)和視頻抓拍數(shù)據(jù)進(jìn)行連接;

D2,對(duì)車(chē)牌號(hào)和時(shí)間字符串進(jìn)行逆序處理,使用車(chē)牌顏色和通行時(shí)間字段對(duì)數(shù)據(jù)進(jìn)行過(guò)濾,得到車(chē)輛軌跡數(shù)據(jù);

D3,以車(chē)牌號(hào)和時(shí)間字符串的逆序字符串為鍵,將所述車(chē)輛軌跡數(shù)據(jù)存儲(chǔ)在HBase中。

上述方法中,首先通過(guò)Spark將RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)與數(shù)據(jù)庫(kù)中人、車(chē)、采集點(diǎn)等基礎(chǔ)信息連接起來(lái),獲取對(duì)軌跡清洗、流量統(tǒng)計(jì)、異常抽取有用的信息,以便于離線數(shù)據(jù)清洗過(guò)程的實(shí)施。

本發(fā)明首先對(duì)車(chē)牌號(hào)和時(shí)間字符串進(jìn)行逆序處理,以提高對(duì)兩種類型數(shù)據(jù)進(jìn)行比對(duì)的效率。由于車(chē)輛軌跡數(shù)據(jù)量很大,同時(shí)要進(jìn)行海量數(shù)據(jù)的高效查詢,所以,本發(fā)明以車(chē)牌號(hào)和時(shí)間字符串的逆序字符串為鍵,將清洗出的車(chē)輛軌跡存儲(chǔ)在HBase中。為了提高存儲(chǔ)的速度,可以使用數(shù)據(jù)導(dǎo)入工具Loader將軌跡數(shù)據(jù)導(dǎo)入到HBase中。

本發(fā)明實(shí)施例中,所述車(chē)輛軌跡的清洗過(guò)程中,首先將RFID數(shù)據(jù)、抓拍數(shù)據(jù)和設(shè)備信息表分別封裝為相應(yīng)的RDD,根據(jù)設(shè)備的IP地址,進(jìn)行數(shù)據(jù)連接,得到帶有方向字段的RFID數(shù)據(jù)RDD和帶有方向的抓拍數(shù)據(jù)RDD;然后對(duì)兩類數(shù)據(jù)RDD分別進(jìn)行轉(zhuǎn)換,得到鍵值對(duì)形式的RDD,以方便比對(duì)連接操作的進(jìn)行,其中鍵為需要進(jìn)行比對(duì)的字段組成的字符串;最后,將兩種數(shù)據(jù)的RDD根據(jù)鍵值進(jìn)行比對(duì)并連接,采用時(shí)間完整性、號(hào)牌顏色一致性、字段的完整性等規(guī)則要求對(duì)數(shù)據(jù)進(jìn)行過(guò)濾,得到正確的數(shù)據(jù)軌跡。

車(chē)輛軌跡清洗模塊RDD依賴關(guān)系如圖3所示。

本發(fā)明實(shí)施例中,所述過(guò)車(chē)流量的統(tǒng)計(jì),按照如下步驟進(jìn)行實(shí)施:

E1,將RFID過(guò)車(chē)數(shù)據(jù)轉(zhuǎn)換為以采集點(diǎn)字段和精確至小時(shí)的時(shí)間字符串為鍵的鍵值對(duì)形式;

E2,根據(jù)Spark分布式大數(shù)據(jù)處理的原理,對(duì)具有相同鍵的數(shù)據(jù)記錄進(jìn)行計(jì)數(shù),得到各個(gè)采集點(diǎn)在相應(yīng)時(shí)間段的過(guò)車(chē)流量記錄;

E3,使用關(guān)系型數(shù)據(jù)庫(kù)對(duì)各個(gè)采集點(diǎn)的過(guò)車(chē)流量統(tǒng)計(jì)結(jié)果進(jìn)行存儲(chǔ)。

過(guò)車(chē)流量統(tǒng)計(jì)根據(jù)統(tǒng)計(jì)類型分為兩種:全量數(shù)據(jù)統(tǒng)計(jì)和各類型車(chē)流量統(tǒng)計(jì)。全量數(shù)據(jù)統(tǒng)計(jì)統(tǒng)計(jì)出通過(guò)每個(gè)采集點(diǎn)的車(chē)流總量;各類型車(chē)流量統(tǒng)計(jì)將車(chē)輛按類型細(xì)分,統(tǒng)計(jì)通過(guò)一個(gè)采集點(diǎn)的每種類型的車(chē)流量的統(tǒng)計(jì)。由于采集點(diǎn)個(gè)數(shù)和車(chē)輛類型都是有限的,所以統(tǒng)計(jì)結(jié)果的數(shù)據(jù)量并不大,可以存儲(chǔ)在關(guān)系型數(shù)據(jù)庫(kù)中。

本發(fā)明中,所述異常數(shù)據(jù)的類型包括:數(shù)據(jù)字段不完整、數(shù)據(jù)缺失和數(shù)據(jù)信息不一致。

由于可能存在數(shù)據(jù)缺失、數(shù)據(jù)字段不完整或者不同類型數(shù)據(jù)信息不一致的情況,在處理過(guò)程中,需要針對(duì)上述幾種情況,篩選出異常的RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù),并標(biāo)識(shí)出數(shù)據(jù)的異常類型,供人工審核和修改,以保證數(shù)據(jù)的完整性和車(chē)輛軌跡清洗的正確性。異常數(shù)據(jù)主要包括以下三種情況:

(1)數(shù)據(jù)字段不完整

(2)數(shù)據(jù)缺失

(3)數(shù)據(jù)信息不一致。

本發(fā)明實(shí)施例中,所述異常數(shù)據(jù)的提取,可以按照如下步驟進(jìn)行實(shí)施:

F1,通過(guò)車(chē)牌號(hào)碼、采集點(diǎn)名稱、采集方向和通過(guò)時(shí)間四個(gè)字段的信息將RFID過(guò)車(chē)數(shù)據(jù)和抓拍數(shù)據(jù)進(jìn)行連接;

F2,根據(jù)數(shù)據(jù)異常類型,首先判斷RFID數(shù)據(jù)是否缺失,如果存在RFID數(shù)據(jù),則判斷RFID數(shù)據(jù)中顏色字段是否存在、抓拍數(shù)據(jù)中抓拍圖片鏈接是否存在,如果字段完整,則判斷RFID數(shù)據(jù)和抓拍數(shù)據(jù)中號(hào)牌顏色是否一致,最后,將提取出的異常數(shù)據(jù)存儲(chǔ)到MySQL數(shù)據(jù)庫(kù)中,并標(biāo)識(shí)異常類型。

根據(jù)RFID和抓拍數(shù)據(jù)的特點(diǎn),數(shù)據(jù)字段不完整主要包括號(hào)牌顏色不一致、無(wú)抓拍圖片兩種類型。為了提高異常處理效率,可以將三種類型的異常數(shù)據(jù)按照上述方法進(jìn)行合并處理。

提取出異常數(shù)據(jù)以后,按照異常類型和數(shù)據(jù)類型進(jìn)行區(qū)分,通過(guò)界面顯示給審核人員,由審核人員針對(duì)不同類型的異常對(duì)數(shù)據(jù)進(jìn)行補(bǔ)充和修復(fù),然后提交給數(shù)據(jù)清洗系統(tǒng)進(jìn)行處理,從而提高車(chē)輛軌跡清洗的精確性。

通過(guò)采用本發(fā)明公開(kāi)的上述技術(shù)方案,得到了如下有益的效果:本發(fā)明實(shí)施例提供的一種快速精準(zhǔn)的交通大數(shù)據(jù)清洗方法,對(duì)于實(shí)時(shí)的RFID和抓拍數(shù)據(jù),采用Spark Streaming流處理技術(shù),利用Kafka提供數(shù)據(jù)緩存,從Kafka中按照時(shí)間窗口不斷提取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,完成數(shù)據(jù)的比對(duì)、統(tǒng)計(jì)和異常處理;對(duì)于離線的批量累積數(shù)據(jù),采用Spark內(nèi)存處理技術(shù),從HDFS中讀取數(shù)據(jù),按照數(shù)據(jù)清洗規(guī)則,對(duì)數(shù)據(jù)進(jìn)行比對(duì)、統(tǒng)計(jì)和異常處理,通過(guò)對(duì)比對(duì)算法的優(yōu)化,提高程序的性能和數(shù)據(jù)清洗結(jié)果的準(zhǔn)確性。實(shí)現(xiàn)了對(duì)城市交通監(jiān)控管理過(guò)程中產(chǎn)生的RFID和抓拍等數(shù)據(jù)快速精準(zhǔn)地進(jìn)行車(chē)輛軌跡清洗、異常數(shù)據(jù)處理、車(chē)流量統(tǒng)計(jì),進(jìn)而實(shí)現(xiàn)了對(duì)交通數(shù)據(jù)資源的加工處理,保障交通大數(shù)據(jù)資源的存儲(chǔ)和利用。

本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可。

本領(lǐng)域人員應(yīng)該理解的是,上述實(shí)施例提供的方法步驟的時(shí)序可根據(jù)實(shí)際情況進(jìn)行適應(yīng)性調(diào)整,也可根據(jù)實(shí)際情況并發(fā)進(jìn)行。

上述實(shí)施例涉及的方法中的全部或部分步驟可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可以存儲(chǔ)于計(jì)算機(jī)設(shè)備可讀取的存儲(chǔ)介質(zhì)中,用于執(zhí)行上述各實(shí)施例方法所述的全部或部分步驟。所述計(jì)算機(jī)設(shè)備,例如:個(gè)人計(jì)算機(jī)、服務(wù)器、網(wǎng)絡(luò)設(shè)備、智能移動(dòng)終端、智能家居設(shè)備、穿戴式智能設(shè)備、車(chē)載智能設(shè)備等;所述的存儲(chǔ)介質(zhì),例如:RAM、ROM、磁碟、磁帶、光盤(pán)、閃存、U盤(pán)、移動(dòng)硬盤(pán)、存儲(chǔ)卡、記憶棒、網(wǎng)絡(luò)服務(wù)器存儲(chǔ)、網(wǎng)絡(luò)云存儲(chǔ)等。

最后,還需要說(shuō)明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開(kāi)來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、商品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、商品或者設(shè)備中還存在另外的相同要素。

以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視本發(fā)明的保護(hù)范圍。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1