專(zhuān)利名稱(chēng):數(shù)據(jù)處理方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)倉(cāng)庫(kù)領(lǐng)域,特別涉及一種數(shù)據(jù)處理方法和裝置。
背景技術(shù):
數(shù)據(jù)倉(cāng)庫(kù)中多渠道的數(shù)據(jù)來(lái)源導(dǎo)致相似重復(fù)記錄增多,嚴(yán)重影響數(shù)據(jù)利用效率和決策質(zhì)量。相似重復(fù)記錄的檢測(cè)和消除成為數(shù)據(jù)倉(cāng)庫(kù)、知識(shí)發(fā)現(xiàn)等領(lǐng)域的熱點(diǎn)研究問(wèn)題。數(shù)據(jù)記錄變化指的是主鍵相同而部分非主鍵列或者全部非主鍵列的值發(fā)生了變化。目前采用逐個(gè)判斷數(shù)據(jù)字段的方法,來(lái)識(shí)別數(shù)據(jù)記錄是否發(fā)生變化。在數(shù)據(jù)字段較多的情況下,需要進(jìn)行多次判斷才能識(shí)別出數(shù)據(jù)記錄是否發(fā)生變化,因此,數(shù)據(jù)變化的識(shí)別效率較低。并且,目前采用一種基于距離的聚類(lèi)算法進(jìn)行重復(fù)數(shù)據(jù)篩選的方法,該方法無(wú)法識(shí)別數(shù)據(jù)的變化過(guò)程?;谀壳皵?shù)據(jù)倉(cāng)庫(kù)領(lǐng)域存在的數(shù)據(jù)變化識(shí)別效率較低以及無(wú)法識(shí)別數(shù)據(jù)變化過(guò)程的問(wèn)題,現(xiàn)有技術(shù)還沒(méi)有相應(yīng)的解決方案。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例所要解決的一個(gè)技術(shù)問(wèn)題是:數(shù)據(jù)變化識(shí)別效率較低以及無(wú)法識(shí)別數(shù)據(jù)變化過(guò)程的問(wèn)題。本發(fā)明實(shí)施例的一個(gè)方面提供了一種數(shù)據(jù)處理方法,包括:對(duì)數(shù)據(jù)源中的數(shù)據(jù)記錄標(biāo)注主鍵標(biāo)志和參與次主鍵運(yùn)算標(biāo)志;根據(jù)標(biāo)注有參與次主鍵運(yùn)算標(biāo)志的字段生成次主鍵,并將該次主鍵添加到該數(shù)據(jù)記錄中,次主鍵用于識(shí)別數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段是否發(fā)生改變;在數(shù)據(jù)記錄中引入開(kāi)始日期、有效日期和結(jié)束日期,分別表示數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段開(kāi)始出現(xiàn)的時(shí)間、持續(xù)有效的時(shí)間和結(jié)束的時(shí)間;根據(jù)標(biāo)注有主鍵標(biāo)志的主鍵、次主鍵、開(kāi)始日期、有效日期和結(jié)束日期,對(duì)數(shù)據(jù)記錄進(jìn)行數(shù)據(jù)轉(zhuǎn)換。本發(fā)明實(shí)施例的另一個(gè)方面提供了一種數(shù)據(jù)處理裝置,包括:標(biāo)注單元,用于對(duì)數(shù)據(jù)源中的數(shù)據(jù)記錄標(biāo)注主鍵標(biāo)志和參與次主鍵運(yùn)算標(biāo)志;次主鍵生成單元,用于根據(jù)標(biāo)注有參與次主鍵運(yùn)算標(biāo)志的字段生成次主鍵,并將該次主鍵添加到該數(shù)據(jù)記錄中,次主鍵用于識(shí)別數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段是否發(fā)生改變;日期形成單元,用于在數(shù)據(jù)記錄中引入開(kāi)始日期、有效日期和結(jié)束日期,分別表示數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段開(kāi)始出現(xiàn)的時(shí)間、持續(xù)有效的時(shí)間和結(jié)束的時(shí)間;數(shù)據(jù)轉(zhuǎn)換單元,用于根據(jù)標(biāo)注有主鍵標(biāo)志的主鍵、次主鍵、開(kāi)始日期、有效日期和結(jié)束日期,對(duì)數(shù)據(jù)記錄進(jìn)行數(shù)據(jù)轉(zhuǎn)換。本發(fā)明通過(guò)對(duì)數(shù)據(jù)源中的數(shù)據(jù)記錄標(biāo)注主鍵標(biāo)志和參與次主鍵運(yùn)算標(biāo)志,根據(jù)標(biāo)注有參與次主鍵運(yùn)算標(biāo)志的字段生成次主鍵,通過(guò)次主鍵識(shí)別數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段是否發(fā)生改變,無(wú)須對(duì)數(shù)據(jù)字段作逐個(gè)判斷,從而提高了數(shù)據(jù)變化的識(shí)別效率;并且,在數(shù)據(jù)記錄中引入開(kāi)始日期、有效日期和結(jié)束日期,分別表示數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段開(kāi)始出現(xiàn)的時(shí)間、持續(xù)有效的時(shí)間和結(jié)束的時(shí)間,當(dāng)次主鍵變化時(shí),說(shuō)明數(shù)據(jù)記錄發(fā)生變化,相應(yīng)地更新數(shù)據(jù)記錄及其開(kāi)始日期、有效日期和結(jié)束日期,確保數(shù)據(jù)記錄條數(shù)即是數(shù)據(jù)變化的次數(shù),這種方法記錄的歷史數(shù)據(jù),用某一個(gè)日期進(jìn)行數(shù)據(jù)匹配時(shí),在相同主鍵的記錄中只能匹配到一條數(shù)據(jù),因此不僅可以記錄歷史數(shù)據(jù)變化情況,而且可以使數(shù)據(jù)記錄數(shù)達(dá)到最小。通過(guò)以下參照附圖對(duì)本發(fā)明的示例性實(shí)施例的詳細(xì)描述,本發(fā)明的其它特征及其優(yōu)點(diǎn)將會(huì)變得清楚。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明針對(duì)ETL的清洗加載轉(zhuǎn)換過(guò)程的原理示意圖。圖2為本發(fā)明斷點(diǎn)轉(zhuǎn)換算法原理示意圖。圖3為本發(fā)明數(shù)據(jù)處理方法一個(gè)實(shí)施例的流程示意圖。圖4為本發(fā)明數(shù)據(jù)處理裝置一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。以下對(duì)至少一個(gè)示例性實(shí)施例的描述實(shí)際上僅僅是說(shuō)明性的,決不作為對(duì)本發(fā)明及其應(yīng)用或使用的任何限制。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。為了解決數(shù)據(jù)變化識(shí)別效率較低以及無(wú)法識(shí)別數(shù)據(jù)變化過(guò)程的問(wèn)題,本發(fā)明提出一種ETL(Extraction-Transformation-Loading,提取、轉(zhuǎn)換和加載)過(guò)程的數(shù)據(jù)處理方法。ETL過(guò)程負(fù)責(zé)將分布的、異構(gòu)數(shù)據(jù)源中的數(shù)據(jù),如關(guān)系數(shù)據(jù)、平面數(shù)據(jù)文件等,抽取到臨時(shí)中間層后進(jìn)行清洗、轉(zhuǎn)換、集成,最后加載到數(shù)據(jù)倉(cāng)庫(kù)或數(shù)據(jù)集市中,成為聯(lián)機(jī)分析處理、數(shù)據(jù)挖掘的基礎(chǔ)。圖1為本發(fā)明針對(duì)ETL的清洗加載轉(zhuǎn)換過(guò)程的原理示意圖。如圖1所示,對(duì)數(shù)據(jù)源進(jìn)行清洗,并保存到臨時(shí)文件,將臨時(shí)文件中的內(nèi)容加載到臨時(shí)數(shù)據(jù)庫(kù),經(jīng)過(guò)一定的轉(zhuǎn)換算法,如正常轉(zhuǎn)換算法、重復(fù)轉(zhuǎn)換算法、斷點(diǎn)轉(zhuǎn)換算法等,保持到目標(biāo)數(shù)據(jù)庫(kù)。其中的清洗功能:可以采用java實(shí)現(xiàn),用于完成源數(shù)據(jù)記錄或者數(shù)據(jù)文本的讀取,并按清洗規(guī)則(本發(fā)明使用清洗策略描述)對(duì)數(shù)據(jù)記錄進(jìn)行逐條處理生成次主鍵,并生成清洗后的數(shù)據(jù)記錄或者數(shù)據(jù)文本。其中的加載功能:可以采用java實(shí)現(xiàn),通過(guò)加載算法的解析和執(zhí)行,完成清洗后數(shù)據(jù)記錄或者數(shù)據(jù)文本的進(jìn)入臨時(shí)數(shù)據(jù)庫(kù)。其中的轉(zhuǎn)換功能:可以采用java實(shí)現(xiàn),用于轉(zhuǎn)換算法的解析和執(zhí)行,完成臨時(shí)數(shù)據(jù)的轉(zhuǎn)換,并到目標(biāo)數(shù)據(jù)庫(kù)的入庫(kù)過(guò)程。下面對(duì)圖1中所涉及的各部分進(jìn)行詳細(xì)說(shuō)明。
(I)數(shù)據(jù)源描述數(shù)據(jù)源是指即將進(jìn)入數(shù)據(jù)倉(cāng)庫(kù)的各個(gè)業(yè)務(wù)系統(tǒng)的數(shù)據(jù)。數(shù)據(jù)源描述是描述數(shù)據(jù)源表或文件清洗所需的屬性和規(guī)則,本發(fā)明中可以采用excel格式進(jìn)行描述,易于對(duì)描述內(nèi)容進(jìn)行擴(kuò)充。數(shù)據(jù)源描述的主要內(nèi)容包括:字段名、字段中文名、字段類(lèi)型、字段長(zhǎng)度、主鍵標(biāo)志、參與次主鍵運(yùn)算標(biāo)志、其他清洗規(guī)則項(xiàng)。表I為采用excel格式進(jìn)行數(shù)據(jù)源描述的一個(gè)示例。如表I所示,根據(jù)主鍵標(biāo)志Y, ID為主鍵;根據(jù)參與次主鍵運(yùn)算標(biāo)志Y,ID、ACTNUM、BCBACT, BNKACT, STRUSEFLG為參與次主鍵運(yùn)算的字段。需要說(shuō)明的是,參與次主鍵運(yùn)算的字段通常包括主鍵和受關(guān)注的數(shù)據(jù)項(xiàng)字段,其中受關(guān)注的數(shù)據(jù)項(xiàng)字段可以是一個(gè)或多個(gè),可以根據(jù)實(shí)際需求靈活設(shè)置。例如,在表I中,ID為主鍵,ACTNUM, BCBACT, BNKACT, STRUSEFLG為受關(guān)注的數(shù)據(jù)項(xiàng)字段。表權(quán)利要求
1.一種數(shù)據(jù)處理方法,包括: 對(duì)數(shù)據(jù)源中的數(shù)據(jù)記錄標(biāo)注主鍵標(biāo)志和參與次主鍵運(yùn)算標(biāo)志; 根據(jù)標(biāo)注有參與次主鍵運(yùn)算標(biāo)志的字段生成次主鍵,并將該次主鍵添加到該數(shù)據(jù)記錄中,次主鍵用于識(shí)別數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段是否發(fā)生改變; 在數(shù)據(jù)記錄中引入開(kāi)始日期、有效日期和結(jié)束日期,分別表示數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段開(kāi)始出現(xiàn)的時(shí)間、持續(xù)有效的時(shí)間和結(jié)束的時(shí)間; 根據(jù)標(biāo)注有主鍵標(biāo)志的主鍵、次主鍵、開(kāi)始日期、有效日期和結(jié)束日期,對(duì)數(shù)據(jù)記錄進(jìn)行數(shù)據(jù)轉(zhuǎn)換。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述標(biāo)注有參與次主鍵運(yùn)算標(biāo)志的字段包括:標(biāo)注有主鍵標(biāo)志的主鍵和受關(guān)注的數(shù)據(jù)項(xiàng)字段; 所述根據(jù)標(biāo)注有參與次主鍵運(yùn)算標(biāo)志的字段生成次主鍵包括: 根據(jù)原始數(shù)據(jù)記錄中的主鍵和受關(guān)注的數(shù)據(jù)項(xiàng)字段,生成次主鍵的初始值,其中的原始數(shù)據(jù)記錄是指主鍵相同的數(shù)據(jù)記錄中開(kāi)始日期最早的記錄; 當(dāng)受關(guān)注的數(shù)據(jù)項(xiàng)字段的內(nèi)容發(fā)生變化時(shí),改變次主鍵的值,保持主鍵的值不變。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述受關(guān)注的數(shù)據(jù)項(xiàng)字段有一個(gè)或多個(gè)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)標(biāo)注有主鍵標(biāo)志的主鍵、次主鍵、開(kāi)始日期、有效日期和結(jié)束日期,對(duì)數(shù)據(jù)記錄進(jìn)行數(shù)據(jù)轉(zhuǎn)換包括: 將第η天的數(shù)據(jù)記錄描述為Rn ^七成義七夂第^丨天的數(shù)據(jù)記錄描述為=Rlri (P,F(xiàn)n— ,Sn— ,Vn—i,En—i); 比較Fn和Flri ; 如果Fn=Flri,刪除數(shù)據(jù)記錄Rlri,新建一條數(shù)據(jù)記錄,描述為Rn (P,F(xiàn)n^1, Sn^1, n,E’);如果Fn關(guān)Flri,更新數(shù)據(jù)記錄Rlri (P, Flri, Slri, n-1, η-l),新建一條數(shù)據(jù)記錄,描述為Rn (P, Fn, η, η, Ε,); 其中,P表示主鍵,F(xiàn)表示次主鍵,S表示開(kāi)始日期,V表示有效日期,E表示結(jié)束日期,數(shù)據(jù)記錄的描述R表示數(shù)據(jù)記錄包括數(shù)據(jù)項(xiàng)P、F、S、V、E;n表示當(dāng)前日期,η — I表示當(dāng)前日期的前一天,Ε’表示當(dāng)前日期η之后的預(yù)設(shè)日期,如果結(jié)束日期為Ε’,則表示該數(shù)據(jù)記錄沒(méi)有結(jié)束。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,在比較匕和?^之前還包括: 將數(shù)據(jù)記錄恢復(fù)到當(dāng)前日期的前一天的狀態(tài);如果此時(shí)的開(kāi)始日期是當(dāng)前日期,刪除該數(shù)據(jù)記錄;如果此時(shí)的有效日期是當(dāng)前日期,修改有效日期為當(dāng)前日期的前一天;如果此時(shí)的結(jié)束日期為當(dāng)前日期的前一天,修改結(jié)束日期為Ε’。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)標(biāo)注有主鍵標(biāo)志的主鍵、次主鍵、開(kāi)始日期、有效日期和結(jié)束日期,對(duì)數(shù)據(jù)記錄進(jìn)行數(shù)據(jù)轉(zhuǎn)換包括: 如果當(dāng)前日期的前一天和后一天的次主鍵相同,并且當(dāng)前日期的次主鍵與其前一天和其后一天的次主鍵相同,則數(shù)據(jù)記錄不需要更改; 或者, 如果當(dāng)前日期的前一天和后一天的次主鍵相同,并且當(dāng)前日期的次主鍵與其前一天或其后一天的次主鍵不同,將前一天數(shù)據(jù)記錄的有效日期和結(jié)束日期都更新為前一天;新增一條數(shù)據(jù)記錄,其開(kāi)始日期、有效日期、結(jié)束日期都是當(dāng)前日期;將后一天數(shù)據(jù)記錄的開(kāi)始日期改為后一天; 或者, 如果當(dāng)前日期的前一天和后一天的次主鍵不同,并且當(dāng)前日期的次主鍵與其前一天的次主鍵相同、與其后一天的次主鍵不同,將前一天數(shù)據(jù)記錄的有效日期和結(jié)束日期改為當(dāng)前日期; 或者, 如果當(dāng)前日期的前一天和后一天的次主鍵不同,并且當(dāng)前日期的次主鍵與其前一天和后一天的次主鍵都不同,將前一天數(shù)據(jù)記錄的有效日期和結(jié)束日期都更新為前一天;新增一條數(shù)據(jù)記錄,其開(kāi)始日期、有效日期、結(jié)束日期都是當(dāng)前日期;將后一天數(shù)據(jù)記錄的開(kāi)始日期改為后一天; 或者, 如果當(dāng)前日期的前一天和后一天的次主鍵不同,并且當(dāng)前日期的次主鍵與其前一天的次主鍵不同,與其后一天的次主鍵相同,將后一天數(shù)據(jù)記錄的開(kāi)始日期改為當(dāng)前日期。
7.一種數(shù)據(jù)處理裝置,包括: 標(biāo)注單元,用于對(duì)數(shù)據(jù)源中的數(shù)據(jù)記錄標(biāo)注主鍵標(biāo)志和參與次主鍵運(yùn)算標(biāo)志; 次主鍵生成單元,用于根據(jù)標(biāo)注有參與次主鍵運(yùn)算標(biāo)志的字段生成次主鍵,并將該次主鍵添加到該數(shù)據(jù)記錄中,次主鍵用于識(shí)別數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段是否發(fā)生改變; 日期形成單元,用于在數(shù)據(jù) 記錄中引入開(kāi)始日期、有效日期和結(jié)束日期,分別表示數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段開(kāi)始出現(xiàn)的時(shí)間、持續(xù)有效的時(shí)間和結(jié)束的時(shí)間; 數(shù)據(jù)轉(zhuǎn)換單元,用于根據(jù)標(biāo)注有主鍵標(biāo)志的主鍵、次主鍵、開(kāi)始日期、有效日期和結(jié)束日期,對(duì)數(shù)據(jù)記錄進(jìn)行數(shù)據(jù)轉(zhuǎn)換。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述標(biāo)注有參與次主鍵運(yùn)算標(biāo)志的字段包括:標(biāo)注有主鍵標(biāo)志的主鍵和受關(guān)注的數(shù)據(jù)項(xiàng)字段; 次主鍵生成單元,具體用于根據(jù)原始數(shù)據(jù)記錄中的主鍵和受關(guān)注的數(shù)據(jù)項(xiàng)字段,生成次主鍵的初始值,其中的原始數(shù)據(jù)記錄是指主鍵相同的數(shù)據(jù)記錄中開(kāi)始日期最早的記錄;當(dāng)受關(guān)注的數(shù)據(jù)項(xiàng)字段的內(nèi)容發(fā)生變化時(shí),改變次主鍵的值,保持主鍵的值不變。
9.根據(jù)權(quán)利要求7或8所述的裝置,其特征在于,所述受關(guān)注的數(shù)據(jù)項(xiàng)字段有一個(gè)或多個(gè)。
10.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述數(shù)據(jù)轉(zhuǎn)換單元,具體用于: 將第η天的數(shù)據(jù)記錄描述為Rn (P,F(xiàn)n,Sn,Vn,En),第η-l天的數(shù)據(jù)記錄描述為=Rlri (P,F(xiàn)n— ,Sn— ,Vn— ,Εη— ); 比較Fn和Flri ; 如果Fn=Flri,刪除數(shù)據(jù)記錄Rlri,新建一條數(shù)據(jù)記錄,描述為Rn (P,F(xiàn)n^1, Sn^1, n,E’); 如果Fn關(guān)Flri,更新數(shù)據(jù)記錄Rlri (P, Flri, Slri, n-1, n_l),新建一條數(shù)據(jù)記錄,描述為Rn (P, Fn, η, η, Ε,); 其中,P表示主鍵,F(xiàn)表示次主鍵,S表示開(kāi)始日期,V表示有效日期,E表示結(jié)束日期,數(shù)據(jù)記錄的描述R表示數(shù)據(jù)記錄包括數(shù)據(jù)項(xiàng)P、F、S、V、E;n表示當(dāng)前日期,η — I表示當(dāng)前日期的前一天,E’表示當(dāng)前日期η之后的預(yù)設(shè)日期,如果結(jié)束日期為E’,則表示該數(shù)據(jù)記錄沒(méi)有結(jié)束。
11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述數(shù)據(jù)轉(zhuǎn)換單元在比較Fn和Flri之前還用于: 將數(shù)據(jù)記錄恢復(fù)到當(dāng)前日期的前一天的狀態(tài);如果此時(shí)的開(kāi)始日期是當(dāng)前日期,刪除該數(shù)據(jù)記錄;如果此時(shí)的有效日期是當(dāng)前日期,修改有效日期為當(dāng)前日期的前一天;如果此時(shí)的結(jié)束日期為當(dāng)前日期的前一天,修改結(jié)束日期為E’。
12.根據(jù)權(quán)利要求7所述的裝置,其特征在于所述數(shù)據(jù)轉(zhuǎn)換單元,具體用于: 如果當(dāng)前日期的前一天和后一天的次主鍵相同,并且當(dāng)前日期的次主鍵與其前一天和其后一天的次主鍵相同,則數(shù)據(jù)記錄不需要更改; 或者, 如果當(dāng)前日期的前一天和后一天的次主鍵相同,并且當(dāng)前日期的次主鍵與其前一天或其后一天的次主鍵不同,將前一天數(shù)據(jù)記錄的有效日期和結(jié)束日期都更新為前一天;新增一條數(shù)據(jù)記錄,其開(kāi)始日期、有效日期、結(jié)束日期都是當(dāng)前日期;將后一天數(shù)據(jù)記錄的開(kāi)始日期改為后一天; 或者, 如果當(dāng)前日期的前一天和后一天的次主鍵不同,并且當(dāng)前日期的次主鍵與其前一天的次主鍵相同、與其后一天的次主鍵不同,將前一天數(shù)據(jù)記錄的有效日期和結(jié)束日期改為當(dāng)前日期; 或者, 如果當(dāng)前日期的前一天和后一天的次主鍵不同,并且當(dāng)前日期的次主鍵與其前一天和后一天的次主鍵都不同,將前一天數(shù)據(jù)記錄的有效日期和結(jié)束日期都更新為前一天;新增一條數(shù)據(jù)記錄,其開(kāi)始日期、有效日期、結(jié)束日期都是當(dāng)前日期;將后一天數(shù)據(jù)記錄的開(kāi)始日期改為后一天; 或者, 如果當(dāng)前日期的前一天和后一天的次主鍵不同,并且當(dāng)前日期的次主鍵與其前一天的次主鍵不同,與其后一天的次主鍵相同,將后一天數(shù)據(jù)記錄的開(kāi)始日期改為當(dāng)前日期。
全文摘要
本發(fā)明公開(kāi)了一種數(shù)據(jù)處理方法和裝置,涉及數(shù)據(jù)倉(cāng)庫(kù)領(lǐng)域。本發(fā)明通過(guò)對(duì)數(shù)據(jù)源中的數(shù)據(jù)記錄標(biāo)注主鍵標(biāo)志和參與次主鍵運(yùn)算標(biāo)志,根據(jù)標(biāo)注有參與次主鍵運(yùn)算標(biāo)志的字段生成次主鍵,通過(guò)次主鍵識(shí)別數(shù)據(jù)記錄中的受關(guān)注的數(shù)據(jù)項(xiàng)字段是否發(fā)生改變,無(wú)須對(duì)數(shù)據(jù)字段作逐個(gè)判斷,從而提高了數(shù)據(jù)變化的識(shí)別效率;并且,在數(shù)據(jù)記錄中引入開(kāi)始/有效/結(jié)束日期,分別表示受關(guān)注的數(shù)據(jù)項(xiàng)字段開(kāi)始出現(xiàn)的時(shí)間、持續(xù)有效的時(shí)間和結(jié)束的時(shí)間,當(dāng)次主鍵變化時(shí),說(shuō)明數(shù)據(jù)記錄發(fā)生變化,相應(yīng)地更新數(shù)據(jù)記錄及其開(kāi)始/有效/結(jié)束日期,確保數(shù)據(jù)記錄條數(shù)即是數(shù)據(jù)變化的次數(shù),因此不僅可以記錄歷史數(shù)據(jù)變化情況,而且可以使數(shù)據(jù)記錄數(shù)達(dá)到最小。
文檔編號(hào)G06F17/30GK103198132SQ20131012593
公開(kāi)日2013年7月10日 申請(qǐng)日期2013年4月12日 優(yōu)先權(quán)日2013年4月12日
發(fā)明者鄧偉仲, 赫偉, 彭明華, 高玉蘭, 趙海鵬, 趙琛, 趙辰, 崔礞, 張亞杰, 沈麗娟, 侯樹(shù)志, 洪克晗, 鄧斌, 辛振峰, 牛兵強(qiáng) 申請(qǐng)人:中國(guó)農(nóng)業(yè)銀行股份有限公司