摘要:針對目前汽車的保有量的急速增加,與汽車有關(guān)的數(shù)據(jù)也是海量的,由此給社會和企業(yè)帶來了一個車輛管理難的問題,本文利用現(xiàn)有的基于互聯(lián)網(wǎng)的以數(shù)據(jù)為中心的新型超級計算模式云計算平臺,重點研究云計算平臺下數(shù)據(jù)挖掘的理論和技術(shù),設(shè)計了云計算平臺和數(shù)據(jù)挖掘平臺的接口及PC機(jī)或者智能終端與系統(tǒng)的接口并在此基礎(chǔ)上開發(fā)了一個基于云計算的智能車輛管理系統(tǒng)。實驗證明,該系統(tǒng)可以對客戶數(shù)據(jù)及車輛數(shù)據(jù)進(jìn)行歸類后,而便于對車輛及客戶進(jìn)行管理,實現(xiàn)智能社會,從而降低企業(yè)開支,提高企業(yè)效益。
關(guān)鍵詞:云計算平臺智能車輛管理系統(tǒng)
1 概述
近年來隨著我國經(jīng)濟(jì)的高速發(fā)展,汽車消費高速增長,汽車保有量也越來越大,由此給社會和企業(yè)帶來了一個車輛管理難的問題,隨著車輛檔案、車輛維修等資料的增加,也增加管理人員勞動強(qiáng)度,對車輛的費用的匯總、分類的要求矛盾日漸突出。本文介紹的是一個基于云計算平臺下數(shù)據(jù)挖掘的車輛管理系統(tǒng),以規(guī)范對車輛信息的管理,提高企業(yè)的辦事效率,為今后的智能社會提供一定參考價值。重點研究在海量的數(shù)據(jù)中的提取用戶所需的有用信息,其關(guān)鍵技術(shù)是選擇數(shù)據(jù)挖掘及其計算平臺。
2 系統(tǒng)架構(gòu)
2.1 模型
系統(tǒng)的架構(gòu)主要分為三部分:一是數(shù)據(jù)庫應(yīng)用程序,二是數(shù)據(jù)挖掘平臺層,三是云計算平臺層。云計算平臺層主要是構(gòu)建實現(xiàn)數(shù)據(jù)的存儲、計算等功能,是為數(shù)據(jù)挖掘平臺提供基礎(chǔ)服務(wù)的。數(shù)據(jù)挖掘平臺層是一個連接層,主要處理數(shù)據(jù)挖掘的部分的,與數(shù)據(jù)庫應(yīng)用程序?qū)舆M(jìn)行信息的溝通,為云計算平臺的提供接口。數(shù)據(jù)庫應(yīng)用程序?qū)邮敲嫦驍?shù)據(jù)庫程序的開發(fā)者的,開發(fā)用戶程序可以從中獲得需要的接口,還可以調(diào)用下層數(shù)據(jù)挖掘平臺層的接口,將數(shù)據(jù)挖掘?qū)铀璧馁Y源傳送過去。
系統(tǒng)使用簡單易操作,因為用戶只需根據(jù)界面操作,而不用去管目標(biāo)系統(tǒng)內(nèi)部的設(shè)計和運行,只需把需要的信息在程序中表示,則系統(tǒng)會自動的顯示結(jié)果。程序開發(fā)人員也通過調(diào)用系統(tǒng)中的各種接口,就能開發(fā)出新的程序,同時開發(fā)的程序還移植到別的平臺。
2.2 云計算平臺層
云計算平臺主要包括三層結(jié)構(gòu): 計算云、數(shù)據(jù)云、存儲云。計算云提供計算服務(wù),數(shù)據(jù)云提供數(shù)據(jù)管理服務(wù),存儲云主要提供存儲服務(wù)。
2.3 數(shù)據(jù)挖掘平臺層
數(shù)據(jù)挖掘平臺層由5個模塊組成,分別為工作流模塊,數(shù)據(jù)裝載模塊,ETL模塊,數(shù)據(jù)挖掘算法模塊和結(jié)果顯示模塊。工作流模塊實現(xiàn)對各個數(shù)據(jù)挖掘步驟及模塊總控、調(diào)度功能;數(shù)據(jù)裝載模塊將源數(shù)據(jù)從智能用戶終端載入云計算平臺的DFS系統(tǒng);挖掘所需的源數(shù)據(jù)則經(jīng)過并行ETL模塊進(jìn)行預(yù)處理,并向云計算平臺提交待執(zhí)行的任務(wù),云計算平臺執(zhí)行后并反饋結(jié)果,存放于DFS;數(shù)據(jù)挖掘算法模塊實現(xiàn)向云計算平臺提供挖掘需要的數(shù)據(jù)挖掘算法任務(wù),由云計算平臺執(zhí)行并反饋結(jié)果,存放于DFS;結(jié)果顯示模塊則顯示用戶數(shù)據(jù)挖掘算法的結(jié)果。
2.4 應(yīng)用程序平臺層
應(yīng)用程序平臺層是用戶編寫應(yīng)用程序時要用到的層,主要包括的模塊有視圖模塊、內(nèi)容提供模塊、資源管理模塊和算法庫中的API。視圖模塊非常豐富而且可以擴(kuò)展,它包括建立應(yīng)用程序的基本組件,主要有內(nèi)嵌的WEB瀏覽器、及數(shù)據(jù)庫開發(fā)的控件。內(nèi)容提供模塊主要功能是應(yīng)用程序間的數(shù)據(jù)提供和共享,即應(yīng)用程序可以訪問其他應(yīng)用程序中的數(shù)據(jù),或者是共享應(yīng)用程序自身的數(shù)據(jù)。應(yīng)用程序需要的各種非程序代碼則存儲在資源管理模塊。算法庫中的API則提供算法。
3 系統(tǒng)的核心設(shè)計
3.1 系統(tǒng)中數(shù)據(jù)挖掘流程
首先終端用戶在人機(jī)交互界面上選擇要挖掘的數(shù)據(jù),然后選擇要挖掘的算法,輸入相關(guān)的參數(shù),接著要導(dǎo)入工作流文件,最后運行挖掘。數(shù)據(jù)挖掘的整個過程都是系統(tǒng)在內(nèi)部進(jìn)行的,用戶只需要在系統(tǒng)運行之前設(shè)置系統(tǒng)運行的條件。最后系統(tǒng)將向用戶顯示結(jié)果,如用戶對結(jié)果滿意則退出系統(tǒng),如不滿意則可以繼續(xù)設(shè)置來進(jìn)行新的挖掘。
3.2 系統(tǒng)功能模塊
①車輛行程和用油記錄表
統(tǒng)計各車輛的行程和用油信息,通過這些信息分析出該車輛百公里的平均油耗。
②車輛安全檢查及整改記錄表
記錄車輛的安全狀況等信息,如果出現(xiàn)問題則提出整改措施,最終由車管員確認(rèn)。
③駕駛員車輛使用日記表
該表與“工作流”模塊中的“機(jī)動車輛派車”關(guān)聯(lián),主要用于記錄使用的一些信息。
④車輛日常檢查
每天對車輛外觀和安全狀況等車輛信息做一個登記,便于車管員及時掌握車輛狀況。
⑤車輛產(chǎn)權(quán)登記
登記機(jī)動車的檔案信息。
⑥車輛管理登記
登記機(jī)動車出產(chǎn)時的檔案信息。
⑦GPS管理系統(tǒng)
GPS系統(tǒng)是GPS車輛管理系統(tǒng)用來確定車輛位置的手段。車載設(shè)備接收來自GPS衛(wèi)星的信號,經(jīng)數(shù)據(jù)處理,獲得車輛的實時經(jīng)度、緯度位置數(shù)據(jù),然后通過通信技術(shù),把信息發(fā)送到服務(wù)器,讓車管員及時了解車輛的地理信息。
⑧系統(tǒng)日志
系統(tǒng)日志分為:日志概況、年度數(shù)據(jù)、時段統(tǒng)計、日志管理這四個模塊。
⑨部門管理
管理每個部門的子與父的關(guān)系,這影響到車輛、駕駛員歸屬單位。
⑩角色管理
角色權(quán)限的設(shè)計采用的是RBAC(基于角色的訪問控制),在RBAC中,權(quán)限與角色相關(guān)聯(lián),用戶通過成為適當(dāng)角色的成員而得到這些角色的權(quán)限。這就極大地簡化了權(quán)限的管理。在一個組織中,角色是為了完成各種工作而創(chuàng)造,用戶則依據(jù)它的責(zé)任和資格來被指派相應(yīng)的角色,用戶可以很容易地從一個角色被指派到另一個角色。角色可依新的需求和系統(tǒng)的合并而賦予新的權(quán)限,而權(quán)限也可根據(jù)需要而從某角色中回收。
■用戶管理
用戶管理:對車輛使用用戶進(jìn)行管理。
■機(jī)動車輛派車
a申請車輛:是由擁有相應(yīng)權(quán)限的申請人按照填寫規(guī)則填寫。
b待批申請:指擁有審批權(quán)限的用戶審批申請人的申請表,審批人為分:部門領(lǐng)導(dǎo)、車管部門、領(lǐng)導(dǎo)審批這幾個權(quán)限。
c已準(zhǔn)申請:顯示分別是②的部門領(lǐng)導(dǎo)、車管部門、領(lǐng)導(dǎo)審批這幾個權(quán)限審批后的列表。
■車輛維修申請
a是由擁有權(quán)限相應(yīng)的申請人按照填寫規(guī)則填寫。
b待批申請:指擁有審批權(quán)限的用戶審批申請人的申請表,審批人分別按:車管員審核、部門領(lǐng)導(dǎo)、車管部門、領(lǐng)導(dǎo)審批這幾個權(quán)限順序?qū)徟?/p>
c已準(zhǔn)申請:顯示分別是b的車管員審核、部門領(lǐng)導(dǎo)、車管部門、領(lǐng)導(dǎo)審批這幾個權(quán)限審批后的列表。
■車牌號預(yù)警
車牌號預(yù)警模塊有兩個功能:一是提前警示將要過期的車牌號,二是警示某車牌有違章記錄。
■車輛營運證預(yù)警
車輛營運證預(yù)警可以通過設(shè)置車牌號的到期時間能提前N天提前車管員去辦理將要過期的車牌號。
3.3 數(shù)據(jù)挖掘平臺
本文通過任務(wù)序列包和數(shù)據(jù)存儲包實現(xiàn)數(shù)據(jù)挖掘平臺和云計算的接口。任務(wù)序列包則是實現(xiàn)的是控制的各個任務(wù)在云計算平臺下進(jìn)行數(shù)據(jù)挖掘時所需要的操作。數(shù)據(jù)存儲包實現(xiàn)的是數(shù)據(jù)在云計算平臺中進(jìn)行數(shù)據(jù)存儲的操作。
3.3.1 任務(wù)序列包
線程安全才能保證接口的實現(xiàn)。序列是基于事務(wù)的,程序中存在一個數(shù)據(jù)存儲事務(wù),若數(shù)據(jù)存儲事務(wù)成功的結(jié)束,則該任務(wù)被增加到序列中,調(diào)用方法add() 或add(TaskOptions)。
3.3.2 數(shù)據(jù)存儲包
數(shù)據(jù)挖掘中的數(shù)據(jù)都是存儲在云計算平臺上,它直接被使用或通過JPA 或JDO接口來調(diào)用。同時為防止故障還要進(jìn)行多余的存儲。
DatastoreService接口來控制存儲,存儲的單位是通過KeyFactory來創(chuàng)建主鍵值的實體。實體屬性的值是基本類型或基本類型的集合。
4 系統(tǒng)實現(xiàn)
本系統(tǒng)實現(xiàn)的是用K-means算法來對用戶進(jìn)行細(xì)分,所用的數(shù)據(jù)是采集的某單位車輛主鍵用戶的使用記錄。數(shù)據(jù)主要有車輛行程和用油記錄表、車輛安全檢查及整改記錄表、駕駛員車輛使用日記表、車輛日常檢查、車輛產(chǎn)權(quán)登記、車輛管理登記、GPS管理系統(tǒng)、系統(tǒng)日志。
用戶通過在后臺登陸后,輸入數(shù)據(jù)集,選擇數(shù)據(jù)挖掘算法及參數(shù)的設(shè)置,當(dāng)工作流文件工作完成后就可以實現(xiàn)具體的數(shù)據(jù)挖掘。
4.1 數(shù)據(jù)操作的實現(xiàn)
當(dāng)用戶消費記錄數(shù)據(jù)的在云計算平臺上的存儲后,在數(shù)據(jù)挖掘的過程中要對存儲的數(shù)據(jù)實現(xiàn)多種操作以取得挖掘的結(jié)果,其中對數(shù)據(jù)的查詢的實現(xiàn)如下:
//數(shù)據(jù)存儲自身的處理
DatastoreService dstore=DatastoreServiceFactory.getDatastoreService()。
//通過設(shè)定的鍵名字來查找數(shù)據(jù)
Entity userEntity=dstore.get(KeyFactory.createKey(\"ChInfo\",cthf))。
//執(zhí)行一個查詢
Query quy=new Query(\"15000\",userEntity)。
quy.addFilter(\"dueDate\",Query.FilterOperator.LESSesTHAN,today)。
以上實現(xiàn)的是用戶記錄中車輛行駛超過15000公里以上的數(shù)據(jù)記錄,這是在分類中所需要用到的。其他相關(guān)數(shù)據(jù)操作的代碼實現(xiàn)可參照上面的代碼。
4.2 數(shù)據(jù)挖掘過程的實現(xiàn)
這里講的是智能終端用戶中數(shù)據(jù)挖掘過程的實現(xiàn),本系統(tǒng)中實現(xiàn)數(shù)據(jù)挖掘的過程主要有三個關(guān)鍵部分,一是實現(xiàn)前臺挖掘過程控制的Activity類,二是實現(xiàn)后臺數(shù)據(jù)挖掘?qū)嶋H進(jìn)行的Service類,三是要實現(xiàn)這兩個類的交互來實現(xiàn)挖掘過程的一步一步的進(jìn)行。在這里以數(shù)據(jù)挖掘中數(shù)據(jù)的ETL的執(zhí)行為例。數(shù)據(jù)挖掘算法采用K-Means算法。
首先要實現(xiàn)的是Activity類,然后實現(xiàn)兩個類的交互,即當(dāng)在界面上通過Activity類開始ETL這一步驟后,由Service類在后臺執(zhí)行這個步驟,而PC機(jī)或者智能終端用戶界面可以做其他的工作。
4.3 實驗結(jié)果及解釋
由表中可以看到,駕齡小的,車輛維修費都是比較高的(即使車齡小、路況好);駕齡大的,車輛維修費都是比較低的(即使車齡大、路況差)。
由此可以看出,對客戶數(shù)據(jù)進(jìn)行歸類后,具有相似特征的客戶可以分為一類,不同的類代表不同特點的駕駛員。這樣可以看清楚各類駕駛員的風(fēng)格,而便于在今后聘請駕駛員時提供更好的決策,從而降低企業(yè)開支,提高企業(yè)效益。
5 結(jié)論
本文設(shè)計了適合于PC機(jī)或者智能終端的云計算平臺下的數(shù)據(jù)挖掘平臺,并設(shè)計了該平臺的架構(gòu)和基本操作流程,主要實現(xiàn)了云計算平臺和數(shù)據(jù)挖掘平臺的接口及PC機(jī)或者智能終端與目標(biāo)系統(tǒng)的接口。并在云計算平臺的基礎(chǔ)上擴(kuò)展實現(xiàn)了本文設(shè)計的云計算,又通過實現(xiàn)K-means算法的相關(guān)實驗來驗證了該目標(biāo)系統(tǒng)的架構(gòu)和基本操作流程,并說明了目標(biāo)系統(tǒng)的可行性及高效性。
本文只是采用了一種算法,將來會繼續(xù)完善相應(yīng)的功能,從而能提供更多的開放接口來實現(xiàn)共享。例如一個交警在路上看到某個車牌號的車,就能知道有關(guān)車輛的一切情況,包括正在駕駛的人員情況。再如單位領(lǐng)導(dǎo),通過系統(tǒng),就可以知道某輛車的一切情況。或者通過系統(tǒng)也可以查到某個駕駛員曾經(jīng)使用過的車輛情況。
參考文獻(xiàn):
[1]孫劍華.未來計算在“云端”—淺談云計算和移動學(xué)習(xí)[J].現(xiàn)代教育技術(shù).2009.8.
[2]賀小華.云計算在教育中的應(yīng)用—以Google協(xié)作平臺為例[J].軟件導(dǎo)刊.2009.9.
[3]施海燕.云計算和移動圖書館[J].學(xué)術(shù)論壇.2009(9)
[4]紀(jì)俊.一種基于云計算的數(shù)據(jù)挖掘平臺架構(gòu)設(shè)計與實現(xiàn)[D].青島大學(xué).2009.5.
[5]汪洋.基于嵌入式移動數(shù)據(jù)庫的數(shù)據(jù)挖掘[D].電子科技大學(xué)碩士.2004.2.