蘇小會(huì),葛宇洲
(西安工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,陜西西安,710021)
數(shù)據(jù)是為反映客觀世界而記錄下來的可以鑒別的數(shù)字或符號(hào),表現(xiàn)為數(shù)字、文字、圖形、圖像、聲音等。數(shù)據(jù)是一種產(chǎn)品,作為產(chǎn)品的數(shù)據(jù)應(yīng)該有質(zhì)量。隨著社會(huì)信息化不斷發(fā)展,特別是在現(xiàn)在的大數(shù)據(jù)時(shí)代,數(shù)據(jù)質(zhì)量問題不得不被認(rèn)真考慮。
數(shù)據(jù)質(zhì)量的概念有很多,一般認(rèn)為數(shù)據(jù)質(zhì)量是數(shù)據(jù)適合使用的程度,或者數(shù)據(jù)質(zhì)量是數(shù)據(jù)滿足特定用戶期望的程度,這個(gè)概念的定義其實(shí)是站在用戶的角度給出的,體現(xiàn)出了與使用數(shù)據(jù)有關(guān)的要求。數(shù)據(jù)質(zhì)量問題涉及三種情形,第一種是數(shù)據(jù)格式問題,如數(shù)據(jù)丟失導(dǎo)致不完整、超出元數(shù)據(jù)范圍導(dǎo)致數(shù)據(jù)無效等;第二種是業(yè)務(wù)邏輯問題,如由于數(shù)據(jù)庫模式設(shè)計(jì)不夠嚴(yán)謹(jǐn)而導(dǎo)致的數(shù)據(jù)之間邏輯矛盾、不正確、不合理等;第三種是數(shù)據(jù)源問題,如由于數(shù)據(jù)源分散、多次采集導(dǎo)致數(shù)據(jù)獲取困難、語義失效、信息冗余等。如今大多數(shù)項(xiàng)目或系統(tǒng)中,數(shù)據(jù)質(zhì)量問題被集中于數(shù)據(jù)預(yù)處理階段解決,在整個(gè)項(xiàng)目進(jìn)行過程中,缺乏對數(shù)據(jù)質(zhì)量問題的持續(xù)關(guān)注。
因此在實(shí)際工作中,我們需要考慮和設(shè)計(jì)一種過程模型,對數(shù)據(jù)質(zhì)量進(jìn)行定義和評(píng)估,在每一個(gè)不同的過程或環(huán)節(jié)中,數(shù)據(jù)質(zhì)量被定義為產(chǎn)品、服務(wù)、系統(tǒng)或者程序的一套基本特征去迎合有關(guān)各方的需要和期望,總之,數(shù)據(jù)質(zhì)量代表了各方的契合點(diǎn),應(yīng)該用有效并可以反復(fù)執(zhí)行的過程模型來評(píng)估和提高數(shù)據(jù)質(zhì)量。
凡是涉及到質(zhì)量問題的評(píng)估和管理,都離不開戴明環(huán)。戴明環(huán)又叫PDCA 循環(huán),PDCA 是英文單詞Plan(策劃)、Do(實(shí)施)、Check(檢查)和Act(處置)的首字母,PDCA 循環(huán)就是按照這一順序進(jìn)行質(zhì)量管理,并且循環(huán)不止的反復(fù)進(jìn)行下去的科學(xué)程序。PDCA 循環(huán)是美國質(zhì)量管理專家休哈特博士率先提出,由戴明學(xué)習(xí)采納、宣傳,獲得普及,因此也被稱為“戴明環(huán)”。
1999 年,Larry 在《Improving Data Warehouse and Business Information Quality》討論了一種通用資源生命周期,包含管理任何資源所需要的流程,文中將資源生命周期定義為五個(gè)階段,分別是規(guī)劃、獲取、維護(hù)、應(yīng)用和報(bào)廢。例如對于資金來說,把它視為金融資源需要規(guī)劃金融資源,進(jìn)行預(yù)算,通過銀行貸款或拋售股票來獲取金融資源,通過支付利息或者股息來維護(hù)金融資源,通過購買其他資源來應(yīng)用金融資源,當(dāng)還清貸款或者回購股票后,資金作為金融資源生命周期就完結(jié)了。同樣對于目前大量的數(shù)據(jù)來說,把其視為數(shù)據(jù)資源,為了從數(shù)據(jù)資源中獲益需要規(guī)劃數(shù)據(jù)資源,我們可以依照Larry 的思想定義數(shù)據(jù)資源生命周期,數(shù)據(jù)資源生命周期,是指從數(shù)據(jù)的需求規(guī)劃開始,生產(chǎn)、獲得、被存儲(chǔ)和利用,到消失或不再有利用價(jià)值、不再被傳播的一系列過程。
數(shù)據(jù)資源的生命周期模型如圖1 所示。圖1 呈現(xiàn)了數(shù)據(jù)生命周期的各個(gè)階段,這種生命周期不是線性過程而是反復(fù)迭代的。
圖1 數(shù)據(jù)生命周期示意圖Fig1 Data Life Cycle
任意一組數(shù)據(jù)的規(guī)劃,獲取,維護(hù),應(yīng)用,報(bào)廢都有很多種方法,而事實(shí)上,同樣的數(shù)據(jù)也可能存儲(chǔ)在多個(gè)地方?,F(xiàn)實(shí)世界中對于數(shù)據(jù)的處理往往是單一的,只在某一環(huán)節(jié)進(jìn)行的,因此針對數(shù)據(jù)生命周期的每個(gè)階段,設(shè)計(jì)一種循環(huán)反復(fù)的數(shù)據(jù)質(zhì)量提高方案是非常有益的。
提高數(shù)據(jù)質(zhì)量常常被看成是一次性的工作,有人會(huì)說“我的項(xiàng)目里已經(jīng)校正過數(shù)據(jù)了”,即使人們意識(shí)到數(shù)據(jù)質(zhì)量工作需要持續(xù)關(guān)注,但由于缺乏系統(tǒng)的認(rèn)識(shí),造成數(shù)據(jù)質(zhì)量工作隨時(shí)間進(jìn)展逐漸淡化,這也是很多應(yīng)用程序開發(fā)項(xiàng)目出現(xiàn)數(shù)據(jù)質(zhì)量問題的原因,一旦進(jìn)入實(shí)踐生產(chǎn),就無法保持項(xiàng)目所需數(shù)據(jù)質(zhì)量,因此本文在戴明環(huán)理論和數(shù)據(jù)生命周期思想的基礎(chǔ)上總結(jié)出一種數(shù)據(jù)質(zhì)量提高方案。
圖2 數(shù)據(jù)質(zhì)量提高方案示意圖Fig2 the improvement plan of data quality
如圖2 所示,該方案分為預(yù)先評(píng)估,認(rèn)知,處置三個(gè)頂層步驟,每一個(gè)頂層步驟中都包含了具體細(xì)化的工作。
在預(yù)先評(píng)估中,首先應(yīng)該做的是分析數(shù)據(jù)環(huán)境。這一工作需要收集,匯總分析關(guān)于當(dāng)前項(xiàng)目的數(shù)據(jù)環(huán)境信息,定義項(xiàng)目業(yè)務(wù)的需求和方法,為業(yè)務(wù)問題相關(guān)的數(shù)據(jù)提供資料,制定獲得數(shù)據(jù)的初步方案,并要弄清楚待處理問題的相關(guān)協(xié)議,文件,以及它們和數(shù)據(jù)質(zhì)量的關(guān)系,這些工作主要通過一些訪談,預(yù)研究,溝通協(xié)調(diào)完成。無論涉及到哪種類型的數(shù)據(jù)質(zhì)量工作,都要避免在不了解基本環(huán)境的情況下直接抽取和分析數(shù)據(jù),否則往往需要進(jìn)行重復(fù)勞動(dòng),效率低下。
接下來是確定數(shù)據(jù)的規(guī)范,數(shù)據(jù)規(guī)范主要包括數(shù)據(jù)模型,數(shù)據(jù)標(biāo)準(zhǔn),業(yè)務(wù)規(guī)則等。數(shù)據(jù)模型是數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)操作,數(shù)據(jù)約束的統(tǒng)稱,是數(shù)據(jù)庫中的形式構(gòu)架。數(shù)據(jù)標(biāo)準(zhǔn)是數(shù)據(jù)中表,字段等命名的規(guī)則,錄入的規(guī)則,使用時(shí)要遵循的標(biāo)準(zhǔn)等。業(yè)務(wù)規(guī)則是指在項(xiàng)目使用該數(shù)據(jù)的時(shí)期內(nèi),數(shù)據(jù)應(yīng)該何時(shí)以及如何被處理的聲明。數(shù)據(jù)規(guī)范的確定是一步重要工作,很多時(shí)候是通過數(shù)據(jù)模型的建立或定義數(shù)據(jù)庫中的元數(shù)據(jù)來完成的。一個(gè)良好的數(shù)據(jù)模型,能夠在恰當(dāng)?shù)募?xì)節(jié)層反應(yīng)與項(xiàng)目相關(guān)的問題,呈現(xiàn)整個(gè)系統(tǒng)的范圍,描述數(shù)據(jù),實(shí)體和關(guān)聯(lián)關(guān)系。元數(shù)據(jù)是關(guān)于數(shù)據(jù)庫的數(shù)據(jù),指在數(shù)據(jù)庫建立過程中所產(chǎn)生的有關(guān)數(shù)據(jù)源的定義,目標(biāo)定義,轉(zhuǎn)換規(guī)則等相關(guān)的關(guān)鍵數(shù)據(jù),可以說是描述數(shù)據(jù)的數(shù)據(jù)。同時(shí)元數(shù)據(jù)還包含對于數(shù)據(jù)含義的商業(yè)信息,所有這些信息都應(yīng)當(dāng)妥善構(gòu)建,并很好地管理。為數(shù)據(jù)庫的發(fā)展和使用提供便利。元數(shù)據(jù)的管理是初始階段控制數(shù)據(jù)質(zhì)量的重要方法,元數(shù)據(jù)管理主要有元數(shù)據(jù)的添加、刪除、修改屬性等維護(hù)功能;元數(shù)據(jù)之間關(guān)系的建立、刪除和跟蹤等關(guān)系維護(hù)功能;進(jìn)行元數(shù)據(jù)發(fā)布流程管理,可以更好地管理和追蹤元數(shù)據(jù)的生命周期;元數(shù)據(jù)自身質(zhì)量核查、元數(shù)據(jù)查詢、元數(shù)據(jù)統(tǒng)計(jì)、元數(shù)據(jù)使用情況分析、元數(shù)據(jù)變更等功能。
完成了預(yù)先評(píng)估的工作,就要進(jìn)入下面的認(rèn)知階段,認(rèn)知階段要進(jìn)行的工作與評(píng)估息息相關(guān)。預(yù)先評(píng)估階段建立了數(shù)據(jù)規(guī)范,分析了背景問題,認(rèn)知階段就要確定所需衡量的數(shù)據(jù)質(zhì)量維度。維度本身是一種數(shù)學(xué)概念,是在一定前提下描述一個(gè)數(shù)學(xué)對象所需要的參數(shù)的個(gè)數(shù),這里的維度是可以理解為一種視角,而不是一個(gè)固定的數(shù)字參數(shù),是一個(gè)判斷、說明、評(píng)價(jià)和確定一個(gè)事物的多方位、多角度、多層次的條件和概念。國內(nèi)外關(guān)于數(shù)據(jù)質(zhì)量維度的研究比較廣泛,劃分也比較細(xì)致,總結(jié)起來,數(shù)據(jù)質(zhì)量的維度主要有以下幾個(gè)方面:數(shù)據(jù)完整性,數(shù)據(jù)重復(fù)性,數(shù)據(jù)準(zhǔn)確性,數(shù)據(jù)一致性,數(shù)據(jù)及時(shí)性等等。數(shù)據(jù)完整性是指數(shù)據(jù)的存在,內(nèi)容結(jié)構(gòu)和其它基本特征是否符合元數(shù)據(jù)標(biāo)準(zhǔn),是否有缺失。數(shù)據(jù)重復(fù)性是指對存在于系統(tǒng)內(nèi)或者系統(tǒng)之間的特殊字符或數(shù)據(jù)集意外重復(fù)的測量標(biāo)準(zhǔn)。數(shù)據(jù)準(zhǔn)確性是指數(shù)據(jù)內(nèi)容是否被按照精確度要求來描述。數(shù)據(jù)一致性,就是當(dāng)多個(gè)用戶試圖同時(shí)訪問一個(gè)數(shù)據(jù)庫,它們的事務(wù)同時(shí)使用相同的數(shù)據(jù)時(shí),可能會(huì)發(fā)生丟失更新、未確定的相關(guān)性、不一致的分析等。數(shù)據(jù)及時(shí)性是指數(shù)據(jù)的生命周期是否符合項(xiàng)目需求的時(shí)間段。在不同的領(lǐng)域還有更多的數(shù)據(jù)質(zhì)量維度劃分,這里就不再一一贅述。研究數(shù)據(jù)質(zhì)量維度應(yīng)該注意一個(gè)方面,就是在一個(gè)項(xiàng)目中該維度的評(píng)估是否可行或者代價(jià)過大,如果評(píng)估該質(zhì)量維度很難實(shí)現(xiàn),也就沒有評(píng)估的必要了。
接下來是確定產(chǎn)生數(shù)據(jù)質(zhì)量問題的原因和提出具體改進(jìn)方法。根據(jù)以上的分析評(píng)估就可以確定產(chǎn)生數(shù)據(jù)質(zhì)量問題的原因,現(xiàn)實(shí)的情況是一個(gè)問題通常都有多個(gè)原因,因此要需要對產(chǎn)生的原因進(jìn)行優(yōu)先級(jí)劃分,以便更好的處理問題,比如產(chǎn)生問題的原因是開發(fā)工具的問題,還是信息采集的問題,還是人為造成的問題等等。有了具體原因,才能制定改進(jìn)的方法,工具問題,能否由更新工具來改善,人為問題,是否應(yīng)該進(jìn)行更好的溝通和責(zé)任劃分來改善等等。
完成前兩個(gè)階段工作之后就要進(jìn)入處置階段。處置階段主要要做兩方面工作,糾正當(dāng)前錯(cuò)誤數(shù)據(jù)和預(yù)防未來錯(cuò)誤數(shù)據(jù),這里的“錯(cuò)誤”是一個(gè)廣義概念,即不符合質(zhì)量需求的數(shù)據(jù)。糾正當(dāng)前數(shù)據(jù)錯(cuò)誤和預(yù)防未來數(shù)據(jù)錯(cuò)誤都要應(yīng)用到具體算法,目前大多數(shù)數(shù)據(jù)質(zhì)量分析處理方法也都是在做這些工作。比如在數(shù)據(jù)缺失的情況下通常使用回歸分析的方法進(jìn)行填補(bǔ),在有大量數(shù)據(jù)冗余的情況下使用固有或非固有頻率的數(shù)據(jù)歸約算法進(jìn)行篩選,還有利用數(shù)據(jù)清洗工具進(jìn)行識(shí)別和合并重復(fù)記錄等等。數(shù)據(jù)的糾正和預(yù)防其實(shí)都是對已有原始數(shù)據(jù)的大規(guī)模更新,這些變更應(yīng)該進(jìn)行詳細(xì)的歸檔記錄,更新的結(jié)果也應(yīng)該及時(shí)與技術(shù)團(tuán)隊(duì)或相關(guān)數(shù)據(jù)利益者進(jìn)行溝通,這樣有助于隨時(shí)檢查可能發(fā)生的問題。這種變更的復(fù)雜性和時(shí)間性也需要慎重考慮,畢竟,數(shù)據(jù)質(zhì)量分析工作是為其它后續(xù)的挖掘工作做準(zhǔn)備。
本文采用西安市交通信息中的浮動(dòng)車GPS 數(shù)據(jù)作為示例。浮動(dòng)車是指安裝有GPS 發(fā)送裝置,在道路上運(yùn)行的車輛,大多數(shù)為公交車或出租車。
首先是對浮動(dòng)車GPS 數(shù)據(jù)進(jìn)行預(yù)先評(píng)估?,F(xiàn)代交通服務(wù)信息的核心是對交通參數(shù)的檢測,傳統(tǒng)檢測法如感應(yīng)線圈檢測等都屬于固定檢測,已經(jīng)很難滿足交通服務(wù)的需求,隨著全球衛(wèi)星定位系統(tǒng)的應(yīng)用,浮動(dòng)車技術(shù)已經(jīng)漸漸成為現(xiàn)代交通參數(shù)檢測的主流,一般用于車輛軌跡描繪和擁堵分析等。通過調(diào)查研究,我們可以總結(jié)GPS 數(shù)據(jù)有以下特點(diǎn):
①GPS 數(shù)據(jù)覆蓋的面積較大,可以對多個(gè)路段的交通狀況進(jìn)行監(jiān)控。
②定位精度較高,能夠進(jìn)行實(shí)時(shí)信息的交互。
③浮動(dòng)車產(chǎn)生的GPS 數(shù)據(jù)量樣本極大,多數(shù)發(fā)送裝置的頻率可達(dá)到1 秒鐘發(fā)送一次。
接下來是針對GPS 原始數(shù)據(jù)進(jìn)行分析,GPS 原始數(shù)據(jù)如下表所示。
從該表可以看出,GPS 浮動(dòng)車數(shù)據(jù)有車輛編號(hào),GPS 時(shí)間,經(jīng)度數(shù)據(jù),緯度數(shù)據(jù),方向角五種主要數(shù)據(jù)項(xiàng),有的浮動(dòng)車數(shù)據(jù)還包含瞬時(shí)速度,行駛距離等,基本數(shù)據(jù)質(zhì)量的分析清洗應(yīng)從GPS浮動(dòng)車數(shù)據(jù)的這五個(gè)屬性展開。而與具體應(yīng)用需求相關(guān)的GPS 數(shù)據(jù),還需要有具體的算法進(jìn)行篩選。
第三步是根據(jù)前面的分析設(shè)計(jì)具體的數(shù)據(jù)篩選算法選取符合需求的數(shù)據(jù)。
表1 原始數(shù)據(jù)Chart1 original data
VehicleID 表示車輛ID 編號(hào),每個(gè)浮動(dòng)車應(yīng)該有唯一編號(hào),本文中,車輛編號(hào)為7 位正整數(shù),且該數(shù)據(jù)不能為空。gpstime表示GPS 定位時(shí)刻,該數(shù)據(jù)不能為空,時(shí)間為24 小時(shí)制,數(shù)據(jù)格式應(yīng)該符合yyyy/mm/dd hh:mm:ss,精確到秒。lng 表示GPS 定位的經(jīng)度信息,該數(shù)據(jù)不能為空,取值范圍為0-180 的東經(jīng)經(jīng)度,要求精確到小數(shù)點(diǎn)后6 位。lat 表示GPS 定位的緯度信息,該數(shù)據(jù)不能為空,取值范圍為0-90 的北緯緯度,要求精確到小數(shù)點(diǎn)后6 位。direct 表示車輛運(yùn)行的方向角,該數(shù)據(jù)不能為空,取值范圍為0-360 的正整數(shù)。
有些原始數(shù)據(jù)缺乏車輛行駛速度,在進(jìn)行擁堵分析時(shí)需要計(jì)算車輛在某點(diǎn)的瞬時(shí)速度或某路段的平均速度,在進(jìn)行某車輛軌跡繪制時(shí),并不要求大量樣本數(shù)據(jù),因此需要按照一定得歸約方法來選取數(shù)據(jù),比如將GPS 發(fā)送裝置的固有頻率從1 秒擴(kuò)大到10 秒來篩選,也可以選取車輛行駛方向角發(fā)生較大偏轉(zhuǎn)時(shí)的數(shù)據(jù)作為記錄點(diǎn),最后將該車輛發(fā)送的GPS 數(shù)據(jù)按時(shí)間順序排列。經(jīng)過篩選后的數(shù)據(jù)如表2
經(jīng)過分析篩選后的數(shù)據(jù)可以用于進(jìn)一步的交通信息挖掘,為城市交通服務(wù)提供更準(zhǔn)確的依據(jù)。
本文的研究,為數(shù)據(jù)質(zhì)量分析提供了一種與具體業(yè)務(wù)無關(guān)的流程方法,將認(rèn)識(shí)數(shù)據(jù)質(zhì)量的概念框架與提高數(shù)據(jù)質(zhì)量的技術(shù)結(jié)合起來,在不同的領(lǐng)域,都可以結(jié)合具體算法進(jìn)行應(yīng)用?,F(xiàn)今的時(shí)代是大數(shù)據(jù)的時(shí)代,更加強(qiáng)調(diào)的是數(shù)據(jù)信息的獲取和分析,而不是創(chuàng)造數(shù)據(jù),而數(shù)據(jù)質(zhì)量分析控制,也不再是由IT 部門單獨(dú)能夠勝任的,需要各學(xué)科的人才,充分利用各類信息數(shù)據(jù)和方法策略來完成,數(shù)據(jù)質(zhì)量問題的挑戰(zhàn),也從逐漸從技術(shù)層面上向思維方式層面拓展,這也是數(shù)據(jù)質(zhì)量分析的魅力所在。
表2 改進(jìn)后的數(shù)據(jù)Chart2 improved data
[1] Monge A,Elkan C.An efficient domain-independent algorithm for detecting approximately duplicate database records[C].In:Proceedings of the ACM- SIGM OD Workshop on Research Issues on Know ledge Discovery and Data Mining,Tucson, AZ,1997
[2] Huang K-T,Lee YW,Wang RY.Quality information and knowledge management.New Jersey:Prentice Hall, 1998
[3] Kahn BK,Strong DM.Product and Service Performance Model for Information Quality:An Update.IQ 1998.
[4] Aebi D, Perrochon L.Towards improving data quality [C].In:Proc.of the International Conference on Information Systems and Management of Data,1993.
[5] Larry.Improving Data Warehouse and Business Information Quality.In:Springer:1999:200-209.
[6] 劉慧,劉敏,韓兵?;诰S度的信息系統(tǒng)數(shù)據(jù)質(zhì)量評(píng)估指標(biāo)體系研究。信息系統(tǒng)工程,2010(6):102-105