何 俊,張云飛,張德海
(1.昆明學院 信息工程學院,昆明 650214; 2.云南大學 軟件學院,昆明 650206)
隨著信息技術(shù)的快速發(fā)展,數(shù)據(jù)規(guī)模逐漸擴大,劣質(zhì)數(shù)據(jù)不斷增加,從而導致數(shù)據(jù)質(zhì)量低下,在一定程度上降低了數(shù)據(jù)可用性,因此數(shù)據(jù)清洗(Data Cleaning,DC)技術(shù)應(yīng)運而生[1]。目前的數(shù)據(jù)清洗方法多數(shù)關(guān)注技術(shù)本身或者針對某個領(lǐng)域的語義和業(yè)務(wù)邏輯規(guī)則進行清洗,面對復雜應(yīng)用領(lǐng)域的大規(guī)模、異構(gòu)數(shù)據(jù)時表現(xiàn)出清洗效率低下、出錯率高等問題。雖然清洗規(guī)則的孤立使用簡化了問題的復雜度,但由于沒有嚴格的規(guī)則間邏輯校驗機制,致使規(guī)則冗余普遍存在,邏輯沖突不易發(fā)現(xiàn),因此最終嚴重影響數(shù)據(jù)修復質(zhì)量。
目前,國內(nèi)外學者在數(shù)據(jù)清洗規(guī)則庫領(lǐng)域進行了大量研究。文獻[2]提出一種基于動態(tài)可配置規(guī)則的數(shù)據(jù)清洗方法,具有跨領(lǐng)域、可重用、可配置和可擴展等特點,提升了規(guī)則重用和清洗效率。文獻[3]將數(shù)據(jù)質(zhì)量問題分為單數(shù)據(jù)源模式層問題、單數(shù)據(jù)源實例層問題、多數(shù)據(jù)源模式層問題和多數(shù)據(jù)源實例層問題四大類,并給出了較清晰的規(guī)則分層思路。文獻[4]針對數(shù)據(jù)噪聲、缺失值和不一致數(shù)據(jù)等臟數(shù)據(jù)問題進行識別和修復。文獻[5-6]圍繞相似重復記錄的識別與剔除方法展開研究,以召回率和準確率作為算法評價指標,對解決規(guī)則冗余問題具有一定的指導作用。文獻[7]將數(shù)據(jù)清洗結(jié)合端到端質(zhì)量執(zhí)行機制進行上下文整體清洗。文獻[8]對基于特征相似度、上下文和關(guān)系的規(guī)則推理方法進行研究,但沒有給出具體模型和執(zhí)行路徑。文獻[9-11]針對數(shù)據(jù)清洗中的邏輯不一致問題,利用規(guī)則推理方法進行降噪,具有一定的參考價值。文獻[12]提出一種模仿專家手動操作的基于規(guī)則的數(shù)據(jù)清洗方法,但該方法未給出具體的實現(xiàn)步驟和算法。此外,文獻[13-15]給出了大數(shù)據(jù)清洗規(guī)則的系統(tǒng)架構(gòu)、具體方法和實現(xiàn)過程。文獻[16-18]在大數(shù)據(jù)清洗系統(tǒng)中充分考慮了數(shù)據(jù)一致性問題,并有效地提升了數(shù)據(jù)質(zhì)量。
目前,雖然在數(shù)據(jù)清洗、領(lǐng)域規(guī)則庫和規(guī)則清洗等方面具有較多的研究,但是針對規(guī)則鏈組合和規(guī)則一致性問題的研究尚不多見。因此,本文提出一種分層的規(guī)則庫,采用Petri網(wǎng)(Petri Net,PN)對其進行建模,并使用形式化方法對規(guī)則鏈流程的正確性和可達性進行推理與檢測,同時對規(guī)則鏈進行優(yōu)選。
數(shù)據(jù)清洗具有邏輯性強、上下文相關(guān)和不同領(lǐng)域重用難等特征[19],可見,組合大量規(guī)則以批量執(zhí)行數(shù)據(jù)清洗任務(wù)則較為復雜。因此,通過建立包含通用層、領(lǐng)域?qū)雍妥远x層的三層規(guī)則庫,將規(guī)則按可重用程度和規(guī)則間相關(guān)程度進行劃分,重點關(guān)注同層內(nèi)規(guī)則之間的邏輯關(guān)系,可為進一步實現(xiàn)規(guī)則批量執(zhí)行提供基礎(chǔ)。
定義1(規(guī)則) 將規(guī)則定義為一個三元組[20],即R=(Rd,Rc,Rl),假設(shè)R為不可分割的最小邏輯單元,即原子規(guī)則,其中:Rd表示規(guī)則唯一標識,由規(guī)則的層編碼和順序碼組合而成;Rc表示基于上下文的規(guī)則描述,定義為一個二元組Rc=(Di,Rx),Di是待處理的目標數(shù)據(jù)項集合參數(shù),Rx是規(guī)則操作描述文檔,采用Petri網(wǎng)標記語言(Petri Net Markup Language,PNML)進行描述[21];Rl表示規(guī)則間的邏輯關(guān)系,定義為一個三元組Rl=(PR,CR,SR),PR是前置規(guī)則集,CR是沖突規(guī)則集,SR是后續(xù)規(guī)則集。
定義2(規(guī)則層) 規(guī)則庫是R的集合,包括通用規(guī)則層(General Rules Layer,GRL)、領(lǐng)域規(guī)則層(Field Rules Layer,FRL)和自定義規(guī)則層(Custom Rules Layer,CRL),分別表示為LG、LF和LC。每個規(guī)則層定義為一個三元組,以通用規(guī)則層為例,LG=(Li,{R},La),其中,Li表示層編碼,{R}表示該層中所有規(guī)則的集合,La表示規(guī)則層間的操作權(quán)限限制集。
定義4(規(guī)則鏈) 假設(shè)在規(guī)則選擇集S中包含n個規(guī)則且n≠0,并設(shè)其中任意一個規(guī)則Rk為初始規(guī)則,則可根據(jù)業(yè)務(wù)需求建立選擇集S中的規(guī)則鏈:
(1)
其中,k≤j≤k+m-1,m是該規(guī)則鏈中的規(guī)則數(shù)量且滿足0≤m≤n。規(guī)則鏈C是根據(jù)規(guī)則之間的前置規(guī)則集PR、沖突規(guī)則集CR和后續(xù)規(guī)則集SR的邏輯和約束關(guān)系連接而成,只有滿足以下條件,才能連接兩個規(guī)則:
1)前一個規(guī)則在后一個規(guī)則的前置規(guī)則集中或者后一個規(guī)則在前一個規(guī)則的后置規(guī)則集中。
2)兩個規(guī)則都不在對方的沖突規(guī)則集中。
由定義4可知,此處的規(guī)則鏈只定義了規(guī)則的執(zhí)行順序,并未考慮規(guī)則的并行、分支和循環(huán)等問題。規(guī)則選擇集S中所有滿足上述條件的規(guī)則鏈C組成的集合稱為規(guī)則鏈生成集,記為C*={∪Ci}。
1)Ci??,Cj??。
2)Ci.R?LG.La,Ci.R?LF.La。
如果規(guī)則選擇集S中有n個規(guī)則且所有規(guī)則之間都可以任意連接,則總共可生成(n-1)!個規(guī)則鏈,但每一條規(guī)則鏈可能存在并行、選擇和循環(huán)等多種組合關(guān)系。因此,需要進一步研究規(guī)則組合方法以及規(guī)則鏈的邏輯正確性和規(guī)則鏈優(yōu)選等問題。
Petri網(wǎng)是一種狀態(tài)變遷模型,用于描述系統(tǒng)異步和并發(fā)狀態(tài)的變遷關(guān)系。
定義6(Petri網(wǎng)) 將Petri網(wǎng)定義為一個四元組PN=(P,T,F,M)[22],當滿足下列條件時,稱PN為Petri網(wǎng):
1)P∪T≠?,P∩T=?。
2)F?{(P×T)∪(T×P)}。
5)觸發(fā)規(guī)則,如果?p∈′t:M(p)≥1,則稱變遷t是使能的,表示為M[t>。如果狀態(tài)標識M下t是使能的,則稱t可以觸發(fā),且觸發(fā)后得到的后繼標識為M′,記為M[t>M′,并且:
(2)
其中,P為庫所集合,T為變遷集合,F為基于P和T建立的有向弧集合。
定義7(輸入集和輸出集) 對于?x∈P∪T,稱′x={y|(y∈P∪T)∧((y,x)∈F)}為x的輸入集,x′={y|(y∈P∪T)∧((x,y)∈F)}為x的輸出集[22]。
定義8(可達標識集) 若Petri網(wǎng)中存在t∈T使得M[t>M′,則稱M′是從M可達的,則PN中從M可達的全部標識集合稱為可達標識集[22],記為R(M),且對?t∈T,推得?M∈R(M)??M′∈R(M)。
定義9(關(guān)聯(lián)矩陣) 在Petri網(wǎng)中,若P={p1,p2,…,pn},T={t1,t2,…,tm},則可表示為矩陣A=[aij]n×m,當且僅當A滿足下列條件時,A稱為PN的關(guān)聯(lián)矩陣[22-23]:
(3)
(4)
(5)
定義10(遷移矩陣) 當且僅當矩陣K=A-diag(t1,t2,…,tn)A+滿足下列條件時,稱K為PN的遷移矩陣[22-23]:
1)當|ti|=1時,變遷觸發(fā),其中,ti是PN中的變遷,i=1,2,…,n。
2)當|ti|=0時,變遷觸發(fā)失效。
經(jīng)濟全球化的發(fā)展,出國旅游也變得越來越普遍,代購行業(yè)也越來越繁榮。在此背景下,提高英語能力尤其是口語能力口語更好地滿足社會發(fā)展的需求,因此,在高職院校的英語教學中,需要正視自己與本科院校學生英語水平的差距,高職院校英語綜合能力較弱,在表達能力上更是有所不足,因此,在這個大背景下,高職院校學生英語能力無法滿足社會日益發(fā)展的需求矛盾,傳統(tǒng)的教學模式重視教師的主導作用側(cè)重于教,現(xiàn)代化教學模式側(cè)重學生的主體地位,而混合式教學的新鮮元素的應(yīng)用在課堂上,可以打破限制英語口語能力的發(fā)展的因素,積極引導學生英語課堂的參與積極性,促進英語口語交流的可能性,激發(fā)學生學習英語的自主性與積極性。
在數(shù)據(jù)清洗操作開始前,根據(jù)業(yè)務(wù)需求選擇適合的規(guī)則選擇集S,而從S中生成無冗余規(guī)則、邏輯正確和最優(yōu)的規(guī)則鏈至關(guān)重要,直接關(guān)系到規(guī)則鏈的自動執(zhí)行和數(shù)據(jù)清洗質(zhì)量。因此,基于Petri網(wǎng)建立規(guī)則鏈組合模型(Rule Chain Combination Model,RCCM),在規(guī)則集執(zhí)行前使用形式化方法對規(guī)則鏈的正確性和可達性進行檢測。
定義11(規(guī)則鏈組合模型) 當且僅當滿足下列條件時,稱四元組Q=(S,C*,PN,M)為數(shù)據(jù)清洗規(guī)則鏈組合模型,其中:S表示包含n個原子規(guī)則R的規(guī)則選擇集;PN表示包含有限庫所集、有限變遷集和有向規(guī)則關(guān)系的Petri網(wǎng);C*表示S的規(guī)則鏈生成集,PN的變遷集合T?S;M表示PN中庫所和變遷的標識符狀態(tài)函數(shù)集。
對于規(guī)則鏈組合模型作如下說明:
1)RCCM模型中PN的所有庫所集合P包含前置規(guī)則集PR(表示為Pp)、后續(xù)規(guī)則集SR(表示為Ps)及沖突規(guī)則集CR(表示為Pc),并滿足P=Pp∪Ps∪Pc。為與Petri網(wǎng)特性保持一致,定義兩個特殊規(guī)則庫所:源規(guī)則庫所和終止規(guī)則庫所,其中,源規(guī)則庫所對應(yīng)規(guī)則鏈中的起始規(guī)則,終止規(guī)則庫所對應(yīng)規(guī)則鏈中的終止規(guī)則。
2)RCCM模型中PN的變遷表示規(guī)則鏈中的規(guī)則R,在變遷集合T中,對于?t∈T,在′t和t′中至少有一個前集和后續(xù)的元素相匹配且不在沖突集中。此時變遷使能,即M[t>M′并將規(guī)則不沖突作為變遷觸發(fā)的前提條件:
(6)
3)此處的規(guī)則鏈已經(jīng)由定義4中的規(guī)則順序執(zhí)行,擴展到規(guī)則并行、分支和循環(huán)等邏輯結(jié)構(gòu)。因此,RCCM模型中基本邏輯結(jié)構(gòu)包含順序、并行、分支和循環(huán)4種,如圖1所示。
RCCM模型是利用Petri網(wǎng)對并發(fā)和異步系統(tǒng)進行形式化表達和邏輯驗證,構(gòu)建可重用、可靠、高效的規(guī)則鏈組合和優(yōu)選方法,提高數(shù)據(jù)清洗質(zhì)量和效率。RCCM模型形式化分析的前提條件為:
1)規(guī)則語義規(guī)范性。為保證規(guī)則語義的一致性、清洗操作的協(xié)同性,采用Petri網(wǎng)描述語言對規(guī)則進行形式化描述,同時與模型語義保持一致。
2)孤立規(guī)則。在給定的規(guī)則選擇集S中,不能組成任何規(guī)則鏈的單個規(guī)則將被模型檢測為孤立規(guī)則或冗余規(guī)則,盡管這些孤立庫所不納入模型重點考慮的范疇,但在實際應(yīng)用中具有重要意義,必須作為單獨的一類規(guī)則鏈參與數(shù)據(jù)清洗的執(zhí)行過程。
3)規(guī)則鏈優(yōu)選指標。在保證規(guī)則鏈正確性、可達性和無死鎖的前提下,需要在給定的規(guī)則鏈生成集S*中判斷最優(yōu)規(guī)則鏈,當且僅當滿足下列條件的規(guī)則鏈稱為最優(yōu)規(guī)則鏈C*(m):
(7)
4)層間規(guī)則鏈組合。為簡化模型且不失一般性,在組合層間規(guī)則鏈后直接進行數(shù)據(jù)清洗操作,不在模型中進行單獨處理。
3.2.1 規(guī)則鏈生成與正確性檢測
圖2 規(guī)則PN組合示意圖
規(guī)則鏈中每組合一個規(guī)則需要完成一次回溯檢測過程。當遍歷所有k時,即可生成一個關(guān)于規(guī)則鏈C的PN,構(gòu)建完成一個規(guī)則鏈PN需要k(k-1)/2次回溯檢測,保證了規(guī)則鏈的邏輯正確性,且根據(jù)PN的特點,規(guī)則鏈中可能存在順序、并行、分支和循環(huán)4種結(jié)構(gòu)。重復上述操作,可得到滿足使能條件的所有關(guān)于規(guī)則鏈C的PN集合,記為Px,并將這些滿足邏輯正確性的規(guī)則鏈數(shù)量記作x。
3.2.2 規(guī)則鏈可達性檢測
3.2.3 規(guī)則鏈優(yōu)選
根據(jù)上述規(guī)則鏈生成、規(guī)則鏈正確性和可達性檢測,設(shè)計規(guī)則鏈生成與檢測算法,具體如下:
算法1規(guī)則鏈生成與檢測算法
輸入規(guī)則選擇集S、初始規(guī)則R0、規(guī)則鏈最大長度N
輸出規(guī)則鏈檢測結(jié)果、最優(yōu)規(guī)則鏈C*(m)
1.CheckModel(S,N)
2.For i=0 to N when//讀取選擇集中的所有元素
3.R[i]=S.R;
4.R[i].Ri=R.Ri& Rc& Rl;
5.C[0][0]=R0;//初始化規(guī)則鏈
6.For i=0 to M when//生成與回溯檢測規(guī)則鏈
7.For j=0 to N when
9.C[i][j]=Ri;
10.Check 1 is true.
11.For i=0 to M when
12.If (Rj?C[i])
13.Mk[tk,Rk>M′;//檢測規(guī)則鏈可達性
15.Rk=Rk+tj;
17.Check 2 is true.
18.For i=0 to M when//規(guī)則鏈優(yōu)選
19.For j=0 to N when
20.If (C[i][j] =C[i][j+1])
21.l[i]= l[i]+1; //規(guī)則重復計數(shù)
22.p=max{mi/(l[i]+1)};
23.C*(m)=C[i];
24.Output Check 1 Check 2 and C*(m)
以規(guī)則選擇集和規(guī)則鏈最大長度作為算法輸入,通過第1行~第4行讀取選擇集中的元素,第5行~第7行為初始化規(guī)則R0并對每一個規(guī)則進行回溯遍歷,第8行判斷規(guī)則是否滿足加入規(guī)則鏈的條件。第11行~第17行計算Petri網(wǎng)的狀態(tài)可達圖,測試RCCM庫所及變遷是否正確,檢測所生成的每一條規(guī)則鏈是否正確和可達。通過遍歷可能生成多條規(guī)則鏈,因此第18行~第24行利用第7行的計算規(guī)則選擇最優(yōu)規(guī)則鏈并對其進行輸出。假設(shè)規(guī)則選擇集S中的規(guī)則數(shù)目為n,生成的規(guī)則鏈數(shù)目為m,每次循環(huán)都需要進行全部規(guī)則遍歷,因此算法中規(guī)則鏈生成對應(yīng)的時間復雜度為O(n2),規(guī)則鏈檢測對應(yīng)的時間復雜度為O(m×n),空間復雜度均為O(m×n)。算法1實現(xiàn)了規(guī)則鏈生成、規(guī)則鏈正確性和可達性檢測以及規(guī)則鏈自動優(yōu)選過程,從邏輯上保證了后續(xù)數(shù)據(jù)清洗操作執(zhí)行的可靠性。
實驗以某地區(qū)扶貧領(lǐng)域的數(shù)據(jù)清洗應(yīng)用為背景,從實際數(shù)據(jù)清洗規(guī)則庫中提取出部分規(guī)則作為選擇集,建立RCCM模型。以該地區(qū)實際扶貧數(shù)據(jù)為實驗數(shù)據(jù),分別使用本文方法和傳統(tǒng)規(guī)則鏈順序執(zhí)行方法[24]進行對比實驗。實驗數(shù)據(jù)集設(shè)置如下:
1)實驗?zāi)繕藬?shù)據(jù)集DataSet,主要包括貧困人口基礎(chǔ)數(shù)據(jù)集和其他輔助清洗數(shù)據(jù)集。貧困人口基礎(chǔ)數(shù)據(jù)集為{序號,戶編號,人編號,姓名,證件類型,證件號碼,與戶主關(guān)系,民族,文化程度,在校狀況,勞動力狀況,務(wù)工時間,大病保險,脫貧屬性,脫貧年份,戶屬性,房屋狀況,人均純收入,聯(lián)系電話,識別時間,幫扶責任人編碼},數(shù)據(jù)記錄350 000條。其他輔助清洗數(shù)據(jù)集包含人口、衛(wèi)健、教育、銀行、交通、稅務(wù)、工商、殘聯(lián)、民政等9個行業(yè)單位的異構(gòu)數(shù)據(jù)記錄900多萬條[25]。
2)數(shù)據(jù)清洗分層規(guī)則和規(guī)則選擇集S。根據(jù)數(shù)據(jù)清洗業(yè)務(wù)的目標要求,第1次先抽取GRL層中的5個規(guī)則、FRL層中的10個規(guī)則及CRL層中的5個規(guī)則,共20個規(guī)則作為規(guī)則選擇集(如表1~表3所示),并在此基礎(chǔ)上再次增加規(guī)則數(shù)量。GRL層主要包括通用清洗規(guī)則,通常作為進一步開展業(yè)務(wù)清洗的基礎(chǔ)。FRL層主要包括業(yè)務(wù)邏輯比對和邏輯錯誤數(shù)據(jù)清洗規(guī)則,通常需要符合業(yè)務(wù)實際情況。CRL層包括根據(jù)用戶擴展的規(guī)則。每次實驗選取的規(guī)則將作為RCCM模型實現(xiàn)的規(guī)則選擇集S。
表1 GRL層中的規(guī)則設(shè)置
表2 FRL層中的規(guī)則設(shè)置
表3 CRL層中規(guī)則設(shè)置
根據(jù)規(guī)則選擇集S建立RCCM模型。本文首先需要根據(jù)清洗目標建立每一個規(guī)則的前置規(guī)則集PR、沖突規(guī)則集CR和后續(xù)規(guī)則集SR,然后使用算法1的回溯遍歷方法生成規(guī)則鏈,經(jīng)過正確性和可達性檢測后生成規(guī)則鏈PN集,最后計算出最優(yōu)規(guī)則鏈C*(m)執(zhí)行數(shù)據(jù)清洗操作。扶貧領(lǐng)域的RCCM模型執(zhí)行流程如圖3所示。
圖3 扶貧領(lǐng)域的RCCM模型執(zhí)行流程
從RCCM模型實現(xiàn)結(jié)果可以看出,RCCM模型有效優(yōu)化了規(guī)則之間的邏輯關(guān)系和執(zhí)行順序,例如規(guī)則1-001和1-003,如果采用傳統(tǒng)規(guī)則鏈順序執(zhí)行方法先執(zhí)行1-001再執(zhí)行1-003,即先檢測重復記錄再檢測和處理異常數(shù)據(jù),則重復記錄通常會嚴重影響異常數(shù)據(jù)檢測和處理,而采用RCCM模型先執(zhí)行1-003再執(zhí)行1-001,避免了上述問題。另外,3-003和3-005有邏輯沖突,即幫扶責任人幫扶對象超過5戶和幫扶責任人無幫扶對象兩種情況不可能同時存在,無需同時執(zhí)行兩個規(guī)則,屬于規(guī)則并行結(jié)構(gòu)。因此,RCCM模型通過檢測邏輯沖突,選擇最優(yōu)規(guī)則鏈,從而提高數(shù)據(jù)清洗效率。
在扶貧領(lǐng)域數(shù)據(jù)清洗實際應(yīng)用場景中,具有數(shù)據(jù)量大、異構(gòu)數(shù)據(jù)源多和分級清洗等特點[26],由于目前采用傳統(tǒng)規(guī)則鏈順序執(zhí)行方法主要存在效率低、錯誤傳遞等問題,因此將通過逐步增加規(guī)則數(shù)量的方式,分別采用本文方法和傳統(tǒng)規(guī)則鏈順序執(zhí)行方法對實驗?zāi)繕藬?shù)據(jù)集DataSet進行數(shù)據(jù)清洗再比較實驗結(jié)果。
實驗環(huán)境為包含2個8核CPU的服務(wù)器1臺、Windows 10 Server操作系統(tǒng)、SQL Server 2014數(shù)據(jù)庫,并采用XML的方式存儲規(guī)則。實驗待清洗目標數(shù)據(jù)為356 123條貧困人口基礎(chǔ)數(shù)據(jù),輔助數(shù)據(jù)為9 325 642條行業(yè)扶貧數(shù)據(jù),分別采用本文方法和傳統(tǒng)規(guī)則鏈順序執(zhí)行方法各自獨立開展4次實驗,規(guī)則數(shù)從第1次的20個分別增加至50個、100個、200個(由于規(guī)則編輯和配置工作量較大,因此本文中不再增加規(guī)則數(shù)量),其中分層規(guī)則數(shù)量采用各層規(guī)則等比增加的方式。同時,為避免引入特殊規(guī)則使實驗結(jié)果失真,規(guī)則均在同一類型基礎(chǔ)上進行增加。時間消耗以服務(wù)器記錄時間為準,錯誤數(shù)據(jù)的評判標準為采用實驗數(shù)據(jù)集與國家扶貧辦基礎(chǔ)數(shù)據(jù)庫已校準的對應(yīng)數(shù)據(jù)集進行比對,若發(fā)現(xiàn)不一致則再經(jīng)過人工核對,最后確認為符合規(guī)則邏輯但被錯誤刪除或修改的數(shù)據(jù),如表4所示。從實驗結(jié)果看,本文方法和傳統(tǒng)規(guī)則鏈順序執(zhí)行方法都產(chǎn)生了錯誤數(shù)據(jù),錯誤數(shù)據(jù)量和時間開銷均隨著規(guī)則數(shù)量的增多而增加。
表4 本文方法與傳統(tǒng)規(guī)則鏈順序執(zhí)行方法的實驗結(jié)果對比
本文分別從錯誤數(shù)據(jù)量和時間開銷兩方面對實驗結(jié)果進行分析,如圖4和圖5所示??梢钥闯?隨著規(guī)則數(shù)量逐步增多,傳統(tǒng)規(guī)則鏈順序執(zhí)行方法的錯誤數(shù)據(jù)量急劇增加,而本文方法的錯誤數(shù)據(jù)量增加比較平穩(wěn),說明其可以有效減少錯誤數(shù)據(jù)的產(chǎn)生,并且所消耗的時間更少,具有更高的執(zhí)行效率。
圖4 本文方法與傳統(tǒng)規(guī)則鏈順序執(zhí)行方法的錯誤數(shù)據(jù)量對比Fig.4 Comparison of the number of error data between the proposed method and traditional rule chain sequential execution method
圖5 本文方法與傳統(tǒng)規(guī)則鏈順序執(zhí)行方法的時間消耗對比
本文針對數(shù)據(jù)清洗規(guī)則鏈組合和規(guī)則一致性問題,提出一種分層的規(guī)則庫,并采用Petri網(wǎng)建立數(shù)據(jù)清洗規(guī)則鏈組合模型,對規(guī)則鏈進行邏輯正確性和可達性檢測,從而選擇最優(yōu)規(guī)則鏈執(zhí)行數(shù)據(jù)清洗操作。實驗結(jié)果表明,該方法能有效減少錯誤數(shù)據(jù)量,并具有更高的執(zhí)行效率。后續(xù)將對規(guī)則鏈分層組合效率進行研究,進一步提高規(guī)則重復利用率和數(shù)據(jù)修復質(zhì)量。