一種溯源表達(dá)式的責(zé)任分析方法
【專利摘要】本發(fā)明涉及一種溯源表達(dá)式的責(zé)任分析方法,其包括以下步驟:將溯源表達(dá)式分為路徑溯源和復(fù)合溯源表達(dá)式;路徑溯源表達(dá)式的責(zé)任分析方法包括:將復(fù)雜路徑查詢語句分解為簡單路徑查詢語句;對非分解得到的簡單路徑查詢語句,將各子表達(dá)式的變量按列排序,完成溯源表達(dá)式到溯源圖的編譯,對分解得到的簡單路徑查詢語句,將其對應(yīng)的簡單路徑表進(jìn)行連接并直接編譯成溯源圖;將溯源圖變換為路徑矩陣PM;采用動(dòng)態(tài)規(guī)劃算法得到最短路徑矩陣SPM;結(jié)合路徑矩陣PM和最短路徑矩陣SPM,計(jì)算路徑溯源表達(dá)式中各源元組的責(zé)任;通過將復(fù)合溯源表達(dá)式分解并計(jì)算源元組的責(zé)任,完成對復(fù)合溯源表達(dá)式中各源元組的責(zé)任分析;采用排序算法對各個(gè)源元組的責(zé)任從大到小進(jìn)行排序。
【專利說明】一種溯源表達(dá)式的責(zé)任分析方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種責(zé)任分析方法,特別是關(guān)于一種溯源表達(dá)式的責(zé)任分析方法。
【背景技術(shù)】
[0002]“責(zé)任分析”指的是各個(gè)源元組對于生成結(jié)果元組重要性的定量分析。溯源信息描述結(jié)果元組的起源和記錄其生命周期的歷史,責(zé)任描述因果關(guān)系的程度并且告知哪些事實(shí)在溯源時(shí)是最有影響力的。既然責(zé)任不能用查詢語句的關(guān)系代數(shù)來進(jìn)行計(jì)算,分析溯源表達(dá)式成為計(jì)算源元組在查詢結(jié)果中責(zé)任的唯一方法。責(zé)任分析是定量分析各個(gè)源元組對于結(jié)果元組重要性的一種手段,并給出源元組重要性的排序。
[0003]查詢主要有等值查詢和不等值查詢,后者由于采用了笛卡爾積,一個(gè)結(jié)果元組在對其進(jìn)行溯源時(shí)將面對大量的源元組,因此我們很難簡單地得出各個(gè)源元組對于產(chǎn)生該結(jié)果元組的重要性。而從因果分析的角度出發(fā),需要分析各個(gè)元組的責(zé)任并且要對它們的責(zé)任進(jìn)行排序,以便找到最重要的源元組。因此對不等值查詢結(jié)果溯源時(shí),責(zé)任分析的困難表現(xiàn)為:(1)已經(jīng)證明責(zé)任分析不能夠用查詢語句的關(guān)系代數(shù)來計(jì)算,因此只能逐條溯源表達(dá)式進(jìn)行分析。(2)由于不等值查詢采用了笛卡爾積,一個(gè)結(jié)果元組溯源時(shí)將面對大量的源元組,如果這些源元組能表示成只讀一次表達(dá)式,那么就能夠在多項(xiàng)式時(shí)間算出它們的責(zé)任;而不等值查詢語句查詢結(jié)果的溯源表達(dá)通常不能表示為只讀一次表達(dá)式,需要找到一種策略來對其溯源表達(dá)式進(jìn)行責(zé)任分析。(3)對于通常的溯源表達(dá)式,已經(jīng)證明求其源元組責(zé)任精確值的時(shí)間復(fù)雜度是NP,因此不可能有有效算法求其責(zé)任的精確值。
【發(fā)明內(nèi)容】
[0004]針對上述問題,本發(fā)明的目的是提供一種溯源表達(dá)式的責(zé)任分析方法,該方法能夠高效地對溯源表達(dá)式中各源元組的責(zé)任進(jìn)行計(jì)算,并對計(jì)算得到的各源元組的責(zé)任進(jìn)行排序。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明采取以下技術(shù)方案:一種溯源表達(dá)式的責(zé)任分析方法,其包括以下步驟:1)在不等值查詢分類的基礎(chǔ)上,將溯源表達(dá)式分為路徑溯源表達(dá)式和復(fù)合溯源表達(dá)式;2)對于路徑溯源表達(dá)式,其責(zé)任分析方法具體包括以下步驟:I )根據(jù)不等式的特點(diǎn),將復(fù)雜路徑查詢語句分解為簡單路徑查詢語句;II )對于非分解得到的簡單路徑查詢語句直接生成溯源表達(dá)式,溯源表達(dá)式表示為:
[0006]
【權(quán)利要求】
1.一種溯源表達(dá)式的責(zé)任分析方法,其包括以下步驟: 1)在不等值查詢分類的基礎(chǔ)上,將溯源表達(dá)式分為路徑溯源表達(dá)式和復(fù)合溯源表達(dá)式; 2)對于路徑溯源表達(dá)式,其責(zé)任分析方法具體包括以下步驟: I)根據(jù)不等式的特點(diǎn),將復(fù)雜路徑查詢語句分解為簡單路徑查詢語句; II)對于非分解得到的簡單路徑查詢語句直接生成溯源表達(dá)式,溯源表達(dá)式表示為:
2.如權(quán)利要求1所述的一種溯源表達(dá)式的責(zé)任分析方法,其特征在于:所述步驟2)中,動(dòng)態(tài)規(guī)劃算法包括:(I )如果PM[i] [j]的值為0,那么SPM[i] [j]的值也為O ;
(II )SPM[0] [j] = 0 和
3.如權(quán)利要求1或2所述的一種溯源表達(dá)式的責(zé)任分析方法,其特征在于:所述步驟2)中,計(jì)算路徑溯源表達(dá)式中各源元組的責(zé)任,其具體包括: (I )讀入路徑矩陣PM和最短路徑矩陣SPM,采用公式
【文檔編號】G06F17/30GK103955540SQ201410212409
【公開日】2014年7月30日 申請日期:2014年5月20日 優(yōu)先權(quán)日:2014年5月20日
【發(fā)明者】覃飆 申請人:中國人民大學(xué)