本發(fā)明實施例涉及機動車檢測監(jiān)管技術(shù)領(lǐng)域,尤指一種數(shù)據(jù)存儲方法和裝置。
背景技術(shù):
傳統(tǒng)的機動車檢測行業(yè),各機動車檢測企業(yè),將檢測數(shù)據(jù)獨立存儲,然后統(tǒng)一打包上傳到監(jiān)管平臺,在打包的過程中就可以對檢測數(shù)據(jù)進(jìn)行修改,以便符合檢測檢測的標(biāo)準(zhǔn),為加強機動車安全技術(shù)檢驗過程中擅減檢驗項目、降低檢驗標(biāo)準(zhǔn)、篡改、偽造檢驗數(shù)據(jù)等突出問題監(jiān)控和管理,公安部、國家質(zhì)檢總局要求檢測數(shù)據(jù)實時上傳,即檢測完成一項上傳一項。目前,由于各檢測企業(yè)網(wǎng)絡(luò)環(huán)境的復(fù)雜性,容易造成檢測數(shù)據(jù)傳到監(jiān)管平臺是無序的,造成數(shù)據(jù)組織的混亂。
技術(shù)實現(xiàn)要素:
為了解決上述技術(shù)問題,本發(fā)明實施例提供了一種數(shù)據(jù)存儲方法和裝置,能夠解決當(dāng)前車檢企業(yè)存在的檢測數(shù)據(jù)無序,造成數(shù)據(jù)組織的混亂的問題。
為了達(dá)到本發(fā)明實施例目的,本發(fā)明實施例提供了一種數(shù)據(jù)存儲方法,該方法包括:
確定待存儲數(shù)據(jù)的數(shù)據(jù)類型;
根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行存儲。
可選地,數(shù)據(jù)類型包括:基礎(chǔ)數(shù)據(jù)和普通數(shù)據(jù);
其中,基礎(chǔ)數(shù)據(jù)用于指示車輛是否上線;
普通數(shù)據(jù)用于指示對車輛的各種檢測數(shù)據(jù)。
可選地,普通數(shù)據(jù)包括:燈光數(shù)據(jù)、制動數(shù)據(jù)、側(cè)滑數(shù)據(jù)、車速數(shù)據(jù)以及結(jié)果數(shù)據(jù)。
可選地,確定待存儲數(shù)據(jù)的數(shù)據(jù)類型包括:
檢測待存儲數(shù)據(jù)的數(shù)據(jù)頭;
從數(shù)據(jù)頭中獲取待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽;
根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽確定待存儲數(shù)據(jù)的數(shù)據(jù)類型。
可選地,標(biāo)簽映射表中存儲有不同的車輛、不同的數(shù)據(jù)類型以及不同的普通數(shù)據(jù)分別對應(yīng)的數(shù)據(jù)標(biāo)簽;
其中,數(shù)據(jù)標(biāo)簽中包含車輛標(biāo)志、數(shù)據(jù)類型標(biāo)志以及普通數(shù)據(jù)分類標(biāo)志;不同的車輛對應(yīng)不同的車輛標(biāo)志,不同的數(shù)據(jù)類型對應(yīng)不同的數(shù)據(jù)類型標(biāo)志,不同的普通數(shù)據(jù)對應(yīng)不同的普通數(shù)據(jù)分類標(biāo)志。
可選地,該方法還包括:
待存儲數(shù)據(jù)在被送到預(yù)設(shè)的監(jiān)管平臺后,暫存在第一數(shù)據(jù)緩存表中;
通過預(yù)設(shè)的入庫線程掃描第一數(shù)據(jù)緩存表以獲取待存儲數(shù)據(jù),并通過入庫線程確定待存儲數(shù)據(jù)的數(shù)據(jù)類型。
可選地,根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行存儲包括:
當(dāng)確定待存儲數(shù)據(jù)為第一車輛的基礎(chǔ)數(shù)據(jù)時,直接將該基礎(chǔ)數(shù)據(jù)存入數(shù)據(jù)庫中與第一車輛對應(yīng)的基礎(chǔ)數(shù)據(jù)表中;
當(dāng)確定待存儲數(shù)據(jù)為第一車輛的第一普通數(shù)據(jù)時,掃描第一車輛的對應(yīng)的基礎(chǔ)數(shù)據(jù)表以判斷基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有基礎(chǔ)數(shù)據(jù),當(dāng)判定基礎(chǔ)數(shù)據(jù)表中已經(jīng)存儲有基礎(chǔ)數(shù)據(jù)時,將第一車輛的第一普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第一車輛對應(yīng)的第一普通數(shù)據(jù)表中;當(dāng)判定基礎(chǔ)數(shù)據(jù)表中未存儲有基礎(chǔ)數(shù)據(jù)時,將第一普通數(shù)據(jù)存儲入第二數(shù)據(jù)緩存表中。
可選地,該方法還包括:
預(yù)設(shè)的排隊線程掃描第二數(shù)據(jù)緩存表,根據(jù)排序獲取第二數(shù)據(jù)緩存表中暫存的第二普通數(shù)據(jù);
查詢獲取的第二普通數(shù)據(jù)的數(shù)據(jù)標(biāo)簽中的車輛標(biāo)志,以獲取第二普通數(shù)據(jù)對應(yīng)的第二車輛;
根據(jù)車輛標(biāo)識查詢第二車輛對應(yīng)的基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有第二車輛對應(yīng)的第二基礎(chǔ)數(shù)據(jù);
當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中已經(jīng)存儲有第二基礎(chǔ)數(shù)據(jù)時,將第二普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第二車輛對應(yīng)的第二普通數(shù)據(jù)表中;當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中未存儲有第二基礎(chǔ)數(shù)據(jù)時,根據(jù)排序獲取第二數(shù)據(jù)緩存表中排在第二普通數(shù)據(jù)后面的第三普通數(shù)據(jù)。
可選地,該方法還包括:將第二普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第二車輛對應(yīng)的第二普通數(shù)據(jù)表中以后,刪除第二數(shù)據(jù)緩存表中的第二普通數(shù)據(jù)。
可選地,該方法還包括:當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中未存儲有第二基礎(chǔ)數(shù)據(jù)時,排隊線程休眠預(yù)設(shè)的時間長度。
為了達(dá)到本發(fā)明實施例目的,本發(fā)明實施例還提供了一種數(shù)據(jù)存儲裝置,該裝置包括:確定模塊和存儲模塊。
確定模塊,用于確定待存儲數(shù)據(jù)的數(shù)據(jù)類型;
存儲模塊,用于根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行存儲。
可選地,數(shù)據(jù)類型包括:基礎(chǔ)數(shù)據(jù)和普通數(shù)據(jù);
其中,基礎(chǔ)數(shù)據(jù)用于指示車輛是否上線;
普通數(shù)據(jù)用于指示對車輛的各種檢測數(shù)據(jù)。
可選地,普通數(shù)據(jù)包括:燈光數(shù)據(jù)、制動數(shù)據(jù)、側(cè)滑數(shù)據(jù)、車速數(shù)據(jù)以及結(jié)果數(shù)據(jù)。
可選地,確定模塊確定待存儲數(shù)據(jù)的數(shù)據(jù)類型包括:
檢測待存儲數(shù)據(jù)的數(shù)據(jù)頭;
從數(shù)據(jù)頭中獲取待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽;
根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽確定待存儲數(shù)據(jù)的數(shù)據(jù)類型。
可選地,標(biāo)簽映射表中存儲有不同的車輛、不同的數(shù)據(jù)類型以及不同的普通數(shù)據(jù)分別對應(yīng)的數(shù)據(jù)標(biāo)簽;
其中,數(shù)據(jù)標(biāo)簽中包含車輛標(biāo)志、數(shù)據(jù)類型標(biāo)志以及普通數(shù)據(jù)分類標(biāo)志;不同的車輛對應(yīng)不同的車輛標(biāo)志,不同的數(shù)據(jù)類型對應(yīng)不同的數(shù)據(jù)類型標(biāo)志,不同的普通數(shù)據(jù)對應(yīng)不同的普通數(shù)據(jù)分類標(biāo)志。
可選地,該裝置還包括:暫存模塊;
暫存模塊,用于在待存儲數(shù)據(jù)在被送到預(yù)設(shè)的監(jiān)管平臺后,將待存儲數(shù)據(jù)暫存在第一數(shù)據(jù)緩存表中;
確定模塊,還用于掃描第一數(shù)據(jù)緩存表以獲取待存儲數(shù)據(jù),并確定待存儲數(shù)據(jù)的數(shù)據(jù)類型。
可選地,存儲模塊根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行存儲包括:
當(dāng)確定待存儲數(shù)據(jù)為第一車輛的基礎(chǔ)數(shù)據(jù)時,直接將基礎(chǔ)數(shù)據(jù)存入數(shù)據(jù)庫中與第一車輛對應(yīng)的基礎(chǔ)數(shù)據(jù)表中;
當(dāng)確定待存儲數(shù)據(jù)為第一車輛的第一普通數(shù)據(jù)時,掃描第一車輛的對應(yīng)的基礎(chǔ)數(shù)據(jù)表以判斷基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有基礎(chǔ)數(shù)據(jù),當(dāng)判定基礎(chǔ)數(shù)據(jù)表中已經(jīng)存儲有基礎(chǔ)數(shù)據(jù)時,將第一車輛的第一普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第一車輛對應(yīng)的第一普通數(shù)據(jù)表中;當(dāng)判定基礎(chǔ)數(shù)據(jù)表中未存儲有基礎(chǔ)數(shù)據(jù)時,將第一普通數(shù)據(jù)存儲入第二數(shù)據(jù)緩存表中。
可選地,該裝置還包括:掃描模塊;掃描模塊用于:
掃描第二數(shù)據(jù)緩存表,根據(jù)排序獲取第二數(shù)據(jù)緩存表中暫存的第二普通數(shù)據(jù);
查詢獲取的第二普通數(shù)據(jù)的數(shù)據(jù)標(biāo)簽中的車輛標(biāo)志,以獲取第二普通數(shù)據(jù)對應(yīng)的第二車輛;
根據(jù)車輛標(biāo)識查詢第二車輛對應(yīng)的基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有第二車輛對應(yīng)的第二基礎(chǔ)數(shù)據(jù);
當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中已經(jīng)存儲有第二基礎(chǔ)數(shù)據(jù)時,將第二普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第二車輛對應(yīng)的第二普通數(shù)據(jù)表中;當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中未存儲有第二基礎(chǔ)數(shù)據(jù)時,根據(jù)排序獲取第二數(shù)據(jù)緩存表中排在第二普通數(shù)據(jù)后面的第三普通數(shù)據(jù)。
可選地,掃描模塊還用于:將第二普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第二車輛對應(yīng)的第二普通數(shù)據(jù)表中以后,刪除第二數(shù)據(jù)緩存表中的第二普通數(shù)據(jù)。
可選地,掃描模塊還用于:當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中未存儲有第二基礎(chǔ)數(shù)據(jù)時,休眠預(yù)設(shè)的時間長度。
本發(fā)明實施例包括:確定待存儲數(shù)據(jù)的數(shù)據(jù)類型;根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行存儲。通過本發(fā)明實施例方案,能夠解決當(dāng)前車檢企業(yè)存在的檢測數(shù)據(jù)無序,造成數(shù)據(jù)組織的混亂的問題。
本發(fā)明實施例的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明實施例而了解。本發(fā)明實施例的目的和其他優(yōu)點可通過在說明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)來實現(xiàn)和獲得。
附圖說明
附圖用來提供對本發(fā)明實施例技術(shù)方案的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本申請的實施例一起用于解釋本發(fā)明實施例的技術(shù)方案,并不構(gòu)成對本發(fā)明實施例技術(shù)方案的限制。
圖1為本發(fā)明實施例的數(shù)據(jù)存儲方法流程圖;
圖2為本發(fā)明實施例的數(shù)據(jù)存儲方法示意圖;
圖3為本發(fā)明實施例的數(shù)據(jù)暫存示意圖;
圖4為本發(fā)明實施例的數(shù)據(jù)存儲裝置組成框圖。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚明白,下文中將結(jié)合附圖對本發(fā)明的實施例進(jìn)行詳細(xì)說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互任意組合。
在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行。并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
為了達(dá)到本發(fā)明實施例目的,本發(fā)明實施例提供了一種數(shù)據(jù)存儲方法,如圖1,圖2所示,該方法包括s101-s102:
s101、確定待存儲數(shù)據(jù)的數(shù)據(jù)類型,該待存儲數(shù)據(jù)為實時上傳的數(shù)據(jù)。
在本發(fā)明實施例中,交警部門為了實現(xiàn)機動車檢測過程的監(jiān)管,避免機動車檢測企業(yè)的作弊行為,要求檢測數(shù)據(jù)實時上傳,并結(jié)合檢測影像數(shù)據(jù)及檢測過程數(shù)據(jù)進(jìn)行比對,糾正檢測陋習(xí),檢測數(shù)據(jù)分為燈光數(shù)據(jù)、制動數(shù)據(jù)、側(cè)滑數(shù)據(jù)、車速數(shù)據(jù)等,分別由不同的客戶機實時上傳,這就造成了數(shù)據(jù)傳到服務(wù)器時是無序的,本發(fā)明實施例方案通過對待存儲數(shù)據(jù)的類型進(jìn)行識別,并根據(jù)識別出的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行相應(yīng)存儲,解決了數(shù)據(jù)存儲時的無序性,保證了數(shù)據(jù)的完整性和可靠性。
可選地,該方法還包括:
待存儲數(shù)據(jù)在被送到預(yù)設(shè)的監(jiān)管平臺后,暫存在第一數(shù)據(jù)緩存表中;
通過預(yù)設(shè)的入庫線程掃描第一數(shù)據(jù)緩存表以獲取待存儲數(shù)據(jù),并通過入庫線程確定待存儲數(shù)據(jù)的數(shù)據(jù)類型。
在本發(fā)明實施例中,為了對檢測數(shù)據(jù)進(jìn)行統(tǒng)一管理,可以預(yù)先設(shè)置統(tǒng)一的監(jiān)管平臺,并將各個檢測企業(yè)的檢測數(shù)據(jù)均實時傳輸?shù)皆摫O(jiān)管平臺上,如圖3所示。這些檢測數(shù)據(jù)被傳輸?shù)奖O(jiān)管平臺以后,并不是立刻進(jìn)行存儲,而是作為待存儲數(shù)據(jù)暫存在預(yù)設(shè)的第一數(shù)據(jù)緩存表中,預(yù)設(shè)的一個或多個入庫線程會周期性或?qū)崟r性掃描第一數(shù)據(jù)緩存表以獲取該待存儲數(shù)據(jù),并通過入庫線程確定待存儲數(shù)據(jù)的數(shù)據(jù)類型。
可選地,該數(shù)據(jù)類型可以包括但不限于:基礎(chǔ)數(shù)據(jù)和普通數(shù)據(jù);
其中,基礎(chǔ)數(shù)據(jù)用于指示車輛是否上線;
普通數(shù)據(jù)用于指示對車輛的各種檢測數(shù)據(jù)。
可選地,普通數(shù)據(jù)可以包括但不限于:燈光數(shù)據(jù)、制動數(shù)據(jù)、側(cè)滑數(shù)據(jù)、車速數(shù)據(jù)以及結(jié)果數(shù)據(jù)。
可選地,確定待存儲數(shù)據(jù)的數(shù)據(jù)類型包括s201-s203:
s201、檢測待存儲數(shù)據(jù)的數(shù)據(jù)頭。
在本發(fā)明實施例中,在入庫線程掃描到第一數(shù)據(jù)緩存表中暫存在待存儲數(shù)據(jù)以后,獲取該待存儲數(shù)據(jù),并對該待存儲數(shù)據(jù)進(jìn)行解析,以獲取該待存儲數(shù)據(jù)的頭文件,即上述的數(shù)據(jù)頭。
s202、從數(shù)據(jù)頭中獲取待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽。
在本發(fā)明實施例中,該數(shù)據(jù)頭中可以預(yù)先設(shè)置用于標(biāo)記當(dāng)前待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽的數(shù)據(jù)標(biāo)簽位,通過對該數(shù)據(jù)標(biāo)簽位進(jìn)行檢測,以獲取待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽。
可選地,標(biāo)簽映射表中存儲有不同的車輛、不同的數(shù)據(jù)類型以及不同的普通數(shù)據(jù)分別對應(yīng)的數(shù)據(jù)標(biāo)簽;
其中,數(shù)據(jù)標(biāo)簽中包含車輛標(biāo)志、數(shù)據(jù)類型標(biāo)志以及普通數(shù)據(jù)分類標(biāo)志;不同的車輛對應(yīng)不同的車輛標(biāo)志,不同的數(shù)據(jù)類型對應(yīng)不同的數(shù)據(jù)類型標(biāo)志,不同的普通數(shù)據(jù)對應(yīng)不同的普通數(shù)據(jù)分類標(biāo)志。
在本發(fā)明實施例中,該數(shù)據(jù)標(biāo)簽可以包括但不限于下述內(nèi)容的一種或多種:文字、字符、字母、數(shù)字、符號、圖形、線條等。例如,一個待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽可以是1-a或1-b-a。其中,1為車輛標(biāo)識,用于區(qū)分不同的車輛;a和b為數(shù)據(jù)類型標(biāo)志,a可以代表基礎(chǔ)數(shù)據(jù),b可以代表普通數(shù)據(jù);a為普通數(shù)據(jù)分類標(biāo)志,可以代表普通數(shù)據(jù)中燈光數(shù)據(jù)、制動數(shù)據(jù)、側(cè)滑數(shù)據(jù)、車速數(shù)據(jù)以及結(jié)果數(shù)據(jù)中的任意一種。另外,該車輛標(biāo)識還可以直接使用車輛的牌號。
s203、根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽確定待存儲數(shù)據(jù)的數(shù)據(jù)類型。
在本發(fā)明實施例中,通過上述步驟獲取待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽以后,便可以根據(jù)該數(shù)據(jù)標(biāo)簽的數(shù)據(jù)類型標(biāo)志為獲取該待存儲數(shù)據(jù)的數(shù)據(jù)類型。
s102、根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行存儲。
在本發(fā)明實施例中,獲取該待存儲數(shù)據(jù)的數(shù)據(jù)類型之后,便可以根據(jù)當(dāng)前數(shù)據(jù)類型進(jìn)行相應(yīng)存儲了。
可選地,根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行存儲包括下述三種情況:
情況一
當(dāng)確定待存儲數(shù)據(jù)為第一車輛的基礎(chǔ)數(shù)據(jù)時,直接將該基礎(chǔ)數(shù)據(jù)存入數(shù)據(jù)庫中與第一車輛對應(yīng)的基礎(chǔ)數(shù)據(jù)表中。
在本發(fā)明實施例中,如果通過上述步驟檢測出當(dāng)前數(shù)據(jù)的數(shù)據(jù)標(biāo)簽為1-a,則根據(jù)1可以確定該數(shù)據(jù)為第一車輛的數(shù)據(jù),并且根據(jù)a可以確定該數(shù)據(jù)為第一車輛的基礎(chǔ)數(shù)據(jù),由于基礎(chǔ)數(shù)據(jù)用于指示車輛是否上線,因此,該數(shù)據(jù)是指示第一車輛已經(jīng)上線的數(shù)據(jù),因此,可以直接將該基礎(chǔ)數(shù)據(jù)存入數(shù)據(jù)庫中與第一車輛對應(yīng)的基礎(chǔ)數(shù)據(jù)表中。
情況二
當(dāng)確定待存儲數(shù)據(jù)為第一車輛的第一普通數(shù)據(jù)時,掃描第一車輛的對應(yīng)的基礎(chǔ)數(shù)據(jù)表以判斷基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有基礎(chǔ)數(shù)據(jù),當(dāng)判定基礎(chǔ)數(shù)據(jù)表中已經(jīng)存儲有基礎(chǔ)數(shù)據(jù)時,將第一車輛的第一普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第一車輛對應(yīng)的第一普通數(shù)據(jù)表中。
在本發(fā)明實施例中,如果通過上述步驟檢測出當(dāng)前數(shù)據(jù)的數(shù)據(jù)標(biāo)簽為1-b-a,則根據(jù)1可以確定該數(shù)據(jù)為第一車輛的數(shù)據(jù),并且根據(jù)b可以確定該數(shù)據(jù)為第一車輛的普通數(shù)據(jù),由于普通數(shù)據(jù)用于對車輛的各種檢測數(shù)據(jù),例如,燈光數(shù)據(jù)、制動數(shù)據(jù)、側(cè)滑數(shù)據(jù)、車速數(shù)據(jù)以及結(jié)果數(shù)據(jù)燈,因此,可以通過a進(jìn)一步確定該數(shù)據(jù)具體為哪一種檢測數(shù)據(jù),如果a代表制動數(shù)據(jù),則可以確定當(dāng)前上傳的為第一車輛的普通數(shù)據(jù)中的制動數(shù)據(jù)。
在本發(fā)明實施例中,獲取該數(shù)據(jù)為普通數(shù)據(jù)以后,不能直接對當(dāng)前數(shù)據(jù)進(jìn)行存儲,需要首先掃描第一車輛的對應(yīng)的基礎(chǔ)數(shù)據(jù)表以判斷基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有基礎(chǔ)數(shù)據(jù),即確定該數(shù)據(jù)對應(yīng)的第一車輛是否已經(jīng)上線。如果判定基礎(chǔ)數(shù)據(jù)表中已經(jīng)存儲有基礎(chǔ)數(shù)據(jù),即確定該數(shù)據(jù)對應(yīng)的第一車輛已經(jīng)上線,則將第一車輛的第一普通數(shù)據(jù)(如上述的制動數(shù)據(jù))存儲入數(shù)據(jù)庫中與第一車輛對應(yīng)的第一普通數(shù)據(jù)表(制動數(shù)據(jù)表)中。
情況三
當(dāng)確定待存儲數(shù)據(jù)為第一車輛的第一普通數(shù)據(jù)時,掃描第一車輛的對應(yīng)的基礎(chǔ)數(shù)據(jù)表以判斷基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有基礎(chǔ)數(shù)據(jù),當(dāng)判定基礎(chǔ)數(shù)據(jù)表中未存儲有基礎(chǔ)數(shù)據(jù)時,將第一普通數(shù)據(jù)存儲入第二數(shù)據(jù)緩存表中。
在本發(fā)明實施例中,如果判定基礎(chǔ)數(shù)據(jù)表中未存儲有基礎(chǔ)數(shù)據(jù),即確定該數(shù)據(jù)對應(yīng)的第一車輛還未上線,則此時為了避免數(shù)據(jù)混亂,先不將當(dāng)前第一車輛的第一普通數(shù)據(jù)(如上述的制動數(shù)據(jù))存儲入數(shù)據(jù)庫中與第一車輛對應(yīng)的第一普通數(shù)據(jù)表(制動數(shù)據(jù)表)中,可以對該數(shù)據(jù)進(jìn)行暫存,例如,將第一普通數(shù)據(jù)存儲入第二數(shù)據(jù)緩存表中。
可選地,該方法還包括s301-s304:
s301、預(yù)設(shè)的排隊線程掃描第二數(shù)據(jù)緩存表,根據(jù)排序獲取第二數(shù)據(jù)緩存表中暫存的第二普通數(shù)據(jù);
s302、查詢獲取的第二普通數(shù)據(jù)的數(shù)據(jù)標(biāo)簽中的車輛標(biāo)志,以獲取第二普通數(shù)據(jù)對應(yīng)的第二車輛;
s303、根據(jù)車輛標(biāo)識查詢第二車輛對應(yīng)的基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有第二車輛對應(yīng)的第二基礎(chǔ)數(shù)據(jù);
s304、當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中已經(jīng)存儲有第二基礎(chǔ)數(shù)據(jù)時,將第二普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第二車輛對應(yīng)的第二普通數(shù)據(jù)表中;當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中未存儲有第二基礎(chǔ)數(shù)據(jù)時,根據(jù)排序獲取第二數(shù)據(jù)緩存表中排在第二普通數(shù)據(jù)后面的第三普通數(shù)據(jù)。
在本發(fā)明實施例中,當(dāng)上述的第一普通數(shù)據(jù)存儲入第二數(shù)據(jù)緩存表中以后,可以通過預(yù)設(shè)的排隊線程對該第二數(shù)據(jù)緩存表進(jìn)行實時性或周期性掃描,并通過掃描獲取第二數(shù)據(jù)緩存表中的普通數(shù)據(jù),例如上述的第二普通數(shù)據(jù)。在該第二數(shù)據(jù)緩存表中,各個普通數(shù)據(jù)可以按照進(jìn)入暫存的順序進(jìn)行排列,并且排隊線程進(jìn)行掃描時可以按照該順序?qū)Ω鱾€普通數(shù)據(jù)進(jìn)行掃描。
在本發(fā)明實施例中,如果當(dāng)前掃描到了第二普通數(shù)據(jù),則需要根據(jù)該第二普通數(shù)據(jù)的車輛標(biāo)志位確定其對應(yīng)的車輛,即上述的第二車輛。在確定出該第二車輛以后,便可以根據(jù)該第二車輛查詢數(shù)據(jù)庫中的對應(yīng)的第二車輛的基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有第二車輛對應(yīng)的第二基礎(chǔ)數(shù)據(jù),如果存儲了第二基礎(chǔ)數(shù)據(jù),說明第二車輛已經(jīng)上線了,則可以直接將該第二普通數(shù)據(jù)存儲到數(shù)據(jù)庫中第二車輛對應(yīng)的第二普通數(shù)據(jù)表中了。如果還未存儲第二基礎(chǔ)數(shù)據(jù),說明第二車輛還未上線,則暫時不能將該第二普通數(shù)據(jù)存儲到數(shù)據(jù)庫中第二車輛對應(yīng)的第二普通數(shù)據(jù)表,可以將該第二普通數(shù)據(jù)繼續(xù)保留在第二數(shù)據(jù)緩存表中。此時排隊線程可以進(jìn)入下一輪掃描,并按順序獲取下一個普通數(shù)據(jù),例如上述的第三普通數(shù)據(jù)。
可選地,該方法還包括:將第二普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第二車輛對應(yīng)的第二普通數(shù)據(jù)表中以后,刪除第二數(shù)據(jù)緩存表中的第二普通數(shù)據(jù)。
在本發(fā)明實施例中,為了避免浪費資源,造成空間擁擠,可以在將第二普通數(shù)據(jù)存儲入第二普通數(shù)據(jù)表中以后,刪除第二數(shù)據(jù)緩存表中的第二普通數(shù)據(jù)。
可選地,該方法還包括:當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中未存儲有第二基礎(chǔ)數(shù)據(jù)時,排隊線程休眠預(yù)設(shè)的時間長度。
在本發(fā)明實施例中,當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中未存儲有第二基礎(chǔ)數(shù)據(jù)時,排隊線程也可以不進(jìn)入下一輪掃描,并且不按順序獲取下一個普通數(shù)據(jù),此時排隊線程可以休眠預(yù)設(shè)的時間長度??蛇x地,該預(yù)設(shè)的時間長度可以包括3秒。
為了達(dá)到本發(fā)明實施例目的,本發(fā)明實施例還提供了一種數(shù)據(jù)存儲裝置1,需要說明的是,上述的方法實施例中的任何實施例均可以應(yīng)用于該裝置實施例中,在此不再一一贅述。如圖4所示,該裝置可以包括:確定模塊11和存儲模塊12。
確定模塊11,用于確定待存儲數(shù)據(jù)的數(shù)據(jù)類型;
存儲模塊12,用于根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行存儲。
可選地,數(shù)據(jù)類型包括:基礎(chǔ)數(shù)據(jù)和普通數(shù)據(jù);
其中,基礎(chǔ)數(shù)據(jù)用于指示車輛是否上線;
普通數(shù)據(jù)用于指示對車輛的各種檢測數(shù)據(jù)。
可選地,普通數(shù)據(jù)包括:燈光數(shù)據(jù)、制動數(shù)據(jù)、側(cè)滑數(shù)據(jù)、車速數(shù)據(jù)以及結(jié)果數(shù)據(jù)。
可選地,確定模塊11確定待存儲數(shù)據(jù)的數(shù)據(jù)類型包括:
檢測待存儲數(shù)據(jù)的數(shù)據(jù)頭;
從數(shù)據(jù)頭中獲取待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽;
根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)標(biāo)簽確定待存儲數(shù)據(jù)的數(shù)據(jù)類型。
可選地,標(biāo)簽映射表中存儲有不同的車輛、不同的數(shù)據(jù)類型以及不同的普通數(shù)據(jù)分別對應(yīng)的數(shù)據(jù)標(biāo)簽;
其中,數(shù)據(jù)標(biāo)簽中包含車輛標(biāo)志、數(shù)據(jù)類型標(biāo)志以及普通數(shù)據(jù)分類標(biāo)志;不同的車輛對應(yīng)不同的車輛標(biāo)志,不同的數(shù)據(jù)類型對應(yīng)不同的數(shù)據(jù)類型標(biāo)志,不同的普通數(shù)據(jù)對應(yīng)不同的普通數(shù)據(jù)分類標(biāo)志。
可選地,該裝置還包括:暫存模塊13;
暫存模塊13,用于在待存儲數(shù)據(jù)在被送到預(yù)設(shè)的監(jiān)管平臺后,將待存儲數(shù)據(jù)暫存在第一數(shù)據(jù)緩存表中;
確定模塊11,還用于掃描第一數(shù)據(jù)緩存表以獲取待存儲數(shù)據(jù),并確定待存儲數(shù)據(jù)的數(shù)據(jù)類型。
可選地,存儲模塊12根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行存儲包括:
當(dāng)確定待存儲數(shù)據(jù)為第一車輛的基礎(chǔ)數(shù)據(jù)時,直接將基礎(chǔ)數(shù)據(jù)存入數(shù)據(jù)庫中與第一車輛對應(yīng)的基礎(chǔ)數(shù)據(jù)表中;
當(dāng)確定待存儲數(shù)據(jù)為第一車輛的第一普通數(shù)據(jù)時,掃描第一車輛的對應(yīng)的基礎(chǔ)數(shù)據(jù)表以判斷基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有基礎(chǔ)數(shù)據(jù),當(dāng)判定基礎(chǔ)數(shù)據(jù)表中已經(jīng)存儲有基礎(chǔ)數(shù)據(jù)時,將第一車輛的第一普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第一車輛對應(yīng)的第一普通數(shù)據(jù)表中;當(dāng)判定基礎(chǔ)數(shù)據(jù)表中未存儲有基礎(chǔ)數(shù)據(jù)時,將第一普通數(shù)據(jù)存儲入第二數(shù)據(jù)緩存表中。
可選地,該裝置還包括:掃描模塊14;掃描模塊14用于:
掃描第二數(shù)據(jù)緩存表,根據(jù)排序獲取第二數(shù)據(jù)緩存表中暫存的第二普通數(shù)據(jù);
查詢獲取的第二普通數(shù)據(jù)的數(shù)據(jù)標(biāo)簽中的車輛標(biāo)志,以獲取第二普通數(shù)據(jù)對應(yīng)的第二車輛;
根據(jù)車輛標(biāo)識查詢第二車輛對應(yīng)的基礎(chǔ)數(shù)據(jù)表中是否已經(jīng)存儲有第二車輛對應(yīng)的第二基礎(chǔ)數(shù)據(jù);
當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中已經(jīng)存儲有第二基礎(chǔ)數(shù)據(jù)時,將第二普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第二車輛對應(yīng)的第二普通數(shù)據(jù)表中;當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中未存儲有第二基礎(chǔ)數(shù)據(jù)時,根據(jù)排序獲取第二數(shù)據(jù)緩存表中排在第二普通數(shù)據(jù)后面的第三普通數(shù)據(jù)。
可選地,掃描模塊14還用于:將第二普通數(shù)據(jù)存儲入數(shù)據(jù)庫中與第二車輛對應(yīng)的第二普通數(shù)據(jù)表中以后,刪除第二數(shù)據(jù)緩存表中的第二普通數(shù)據(jù)。
可選地,掃描模塊14還用于:當(dāng)?shù)诙囕v對應(yīng)的基礎(chǔ)數(shù)據(jù)表中未存儲有第二基礎(chǔ)數(shù)據(jù)時,休眠預(yù)設(shè)的時間長度。
本發(fā)明實施例包括:確定待存儲數(shù)據(jù)的數(shù)據(jù)類型;根據(jù)待存儲數(shù)據(jù)的數(shù)據(jù)類型對待存儲數(shù)據(jù)進(jìn)行存儲。通過本發(fā)明實施例方案,能夠解決當(dāng)前車檢企業(yè)存在的檢測數(shù)據(jù)無序,造成數(shù)據(jù)組織的混亂的問題。
本發(fā)明實施例方案具有以下優(yōu)勢:
1、數(shù)據(jù)實時上傳,避免了對數(shù)據(jù)進(jìn)行加工的可能性,排除了進(jìn)行作弊操作的時間。
2、對數(shù)據(jù)進(jìn)行排序,并按照數(shù)據(jù)類型存儲,保證了數(shù)據(jù)的完整性,有效性,避免了因網(wǎng)絡(luò)問題造成的數(shù)據(jù)組織混亂,數(shù)據(jù)失效的可能性。
雖然本發(fā)明實施例所揭露的實施方式如上,但所述的內(nèi)容僅為便于理解本發(fā)明實施例而采用的實施方式,并非用以限定本發(fā)明實施例。任何本發(fā)明實施例所屬領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明實施例所揭露的精神和范圍的前提下,可以在實施的形式及細(xì)節(jié)上進(jìn)行任何的修改與變化,但本發(fā)明實施例的專利保護(hù)范圍,仍須以所附的權(quán)利要求書所界定的范圍為準(zhǔn)。