一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具的制作方法【
技術(shù)領(lǐng)域:
】[0001]本發(fā)明涉及數(shù)據(jù)比較
技術(shù)領(lǐng)域:
,具體地說(shuō)是一種實(shí)用性強(qiáng)、可擴(kuò)展的數(shù)據(jù)一致性檢查工具?!?br>背景技術(shù):
】[0002]作為分布式數(shù)據(jù)集中的一個(gè)環(huán)節(jié),各個(gè)系統(tǒng)庫(kù)中的基礎(chǔ)數(shù)據(jù)的清洗、合并尤為重要。同一家集團(tuán)企業(yè),同一套ERP系統(tǒng),往往由于各種網(wǎng)絡(luò)條件限制,各個(gè)生產(chǎn)庫(kù)并不在同一個(gè)網(wǎng)絡(luò)環(huán)境中。分布式實(shí)施,各個(gè)子公司節(jié)點(diǎn)的系統(tǒng)基礎(chǔ)表的表結(jié)構(gòu)也不盡相同??缇W(wǎng)絡(luò)、跨生產(chǎn)庫(kù)、表結(jié)構(gòu)不完全相同,這些因素導(dǎo)致基礎(chǔ)數(shù)據(jù)的清洗、合并工作相對(duì)困難。[0003]每個(gè)系統(tǒng)中都有非交易型的關(guān)鍵信息,通常被稱之為公有基礎(chǔ)數(shù)據(jù)或者主數(shù)據(jù)。在各企業(yè)實(shí)施ETL過(guò)程中,各個(gè)系統(tǒng)的主數(shù)據(jù)如何判別是否一致,以及不一致的情形下如何處理非常關(guān)鍵。在這其中,由于網(wǎng)絡(luò)不通、同一個(gè)表表結(jié)構(gòu)不通等客觀因素,增加了處理的復(fù)雜度。[0004]本發(fā)明正是針對(duì)以上問(wèn)題,設(shè)計(jì)了一套可擴(kuò)展的數(shù)據(jù)一致性檢查工具。本工具可以實(shí)現(xiàn):同一網(wǎng)絡(luò)間數(shù)據(jù)源的管理;通過(guò)設(shè)定一致性檢查規(guī)則進(jìn)行基礎(chǔ)數(shù)據(jù)一致性檢查;對(duì)基礎(chǔ)數(shù)據(jù)一致性檢查的結(jié)果進(jìn)行歸集處理?!?br/>發(fā)明內(nèi)容】[0005]本發(fā)明的技術(shù)任務(wù)是針對(duì)以上不足之處,提供一種實(shí)用性強(qiáng)、可擴(kuò)展的數(shù)據(jù)一致性檢查工具。[0006]—種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,其具體結(jié)構(gòu)包括:數(shù)據(jù)庫(kù)連接配置模塊,將所有數(shù)據(jù)庫(kù)實(shí)例集中到統(tǒng)一網(wǎng)絡(luò)中;檢查內(nèi)容設(shè)置模塊,用于構(gòu)建檢查規(guī)則;一致性檢查模塊,根據(jù)數(shù)據(jù)庫(kù)配置信息連接兩個(gè)數(shù)據(jù)庫(kù),對(duì)設(shè)置的檢查內(nèi)容進(jìn)行檢查,同時(shí)展示檢查結(jié)果;映射關(guān)系設(shè)置模塊,用于在一致性檢查進(jìn)行映射時(shí),通過(guò)表名查找映射ID;檢查結(jié)果歸集處理模塊,根據(jù)業(yè)務(wù)庫(kù)中當(dāng)前基礎(chǔ)表中數(shù)據(jù)的使用與否,對(duì)檢查不一致的數(shù)據(jù)進(jìn)行歸集處理。[0007]所述數(shù)據(jù)庫(kù)連接配置模塊中,對(duì)于不在同一網(wǎng)絡(luò)的數(shù)據(jù)庫(kù)實(shí)例,通過(guò)數(shù)據(jù)庫(kù)備份恢復(fù),構(gòu)建鏡像庫(kù)的方式,集中到同一個(gè)網(wǎng)絡(luò)中;然后該模塊在連接中間庫(kù)的應(yīng)用系統(tǒng)中配置待比較數(shù)據(jù)庫(kù)實(shí)例的數(shù)據(jù)庫(kù)連接信息。[0008]所述檢查內(nèi)容設(shè)置模塊中,檢查規(guī)則的構(gòu)建包括根據(jù)表字段,依賴其字段,檢查字段,其中檢查字段、依賴字段都是該表字段的子集;當(dāng)依賴字段的數(shù)據(jù)相同時(shí),檢查字段的內(nèi)容也相同則認(rèn)為相同;其它的均認(rèn)為不一致。[0009]所述一致性檢查模塊中,支持兩個(gè)數(shù)據(jù)源相同數(shù)據(jù)庫(kù)類型的同一表結(jié)構(gòu)數(shù)據(jù)的比較,然后分別列示檢查內(nèi)容設(shè)置模塊中設(shè)置檢查規(guī)則的比較結(jié)果,檢查結(jié)果分為兩類:一致、不一致。[0010]所述映射關(guān)系設(shè)置模塊中,通過(guò)設(shè)置每個(gè)數(shù)據(jù)庫(kù)連接,每個(gè)表的映射關(guān)系,使得在一致性檢查進(jìn)行映射時(shí),通過(guò)表名查找映射ID。[0011]所述檢查結(jié)果歸集模塊中,對(duì)于兩個(gè)庫(kù)中檢查結(jié)果中不相同的項(xiàng),對(duì)當(dāng)前系統(tǒng)中業(yè)務(wù)表無(wú)影響的,手動(dòng)調(diào)整一致,即通過(guò)導(dǎo)出功能,導(dǎo)出excel,對(duì)照著源庫(kù)進(jìn)行調(diào)整;對(duì)于檢查結(jié)果中不一致的基礎(chǔ)數(shù)據(jù),系統(tǒng)中已經(jīng)有業(yè)務(wù)數(shù)據(jù)引用的,通過(guò)工具建立映射。[0012]本發(fā)明的一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,具有以下優(yōu)點(diǎn):該發(fā)明的一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,可使得基礎(chǔ)數(shù)據(jù)的清洗合并工作簡(jiǎn)單化,在網(wǎng)絡(luò)不通、同一個(gè)表表結(jié)構(gòu)不通的前提下,數(shù)據(jù)處理復(fù)雜度降低,解決現(xiàn)有企業(yè)中出現(xiàn)多個(gè)信息孤島的問(wèn)題,實(shí)用性強(qiáng),適用范圍廣泛,易于推廣?!靖綀D說(shuō)明】[0013]附圖1為本發(fā)明的實(shí)現(xiàn)示意圖?!揪唧w實(shí)施方式】[0014]下面結(jié)合具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明。[0015]本發(fā)明的提供一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,如附圖1所示,其具體結(jié)構(gòu)包括:數(shù)據(jù)庫(kù)連接配置模塊,將所有數(shù)據(jù)庫(kù)實(shí)例集中到統(tǒng)一網(wǎng)絡(luò)中;檢查內(nèi)容設(shè)置模塊,用于構(gòu)建檢查規(guī)則;一致性檢查模塊,根據(jù)數(shù)據(jù)庫(kù)配置信息連接兩個(gè)數(shù)據(jù)庫(kù),對(duì)設(shè)置的檢查內(nèi)容進(jìn)行檢查,同時(shí)展示檢查結(jié)果;映射關(guān)系設(shè)置模塊,用于在一致性檢查進(jìn)行映射時(shí),通過(guò)表名查找映射ID;檢查結(jié)果歸集處理模塊,根據(jù)業(yè)務(wù)庫(kù)中當(dāng)前基礎(chǔ)表中數(shù)據(jù)的使用與否,對(duì)檢查不一致的數(shù)據(jù)進(jìn)行歸集處理。[0016]所述數(shù)據(jù)庫(kù)連接配置模塊中,對(duì)于不在同一網(wǎng)絡(luò)的數(shù)據(jù)庫(kù)實(shí)例,通過(guò)數(shù)據(jù)庫(kù)備份恢復(fù),構(gòu)建鏡像庫(kù)的方式,集中到同一個(gè)網(wǎng)絡(luò)中;然后該模塊在連接中間庫(kù)的應(yīng)用系統(tǒng)中配置待比較數(shù)據(jù)庫(kù)實(shí)例的數(shù)據(jù)庫(kù)連接信息。待比較庫(kù)的數(shù)據(jù)庫(kù)類型一致,同為oracle或者sqlserver,不強(qiáng)制要求數(shù)據(jù)庫(kù)版本一致。[0017]所述檢查內(nèi)容設(shè)置模塊中,檢查規(guī)則的構(gòu)建包括根據(jù)表字段,依賴其字段,檢查字段,其中檢查字段、依賴字段都是該表字段的子集;不同數(shù)據(jù)源中相同表名的兩個(gè)表(表結(jié)構(gòu)不要求完全相同),進(jìn)行比較時(shí)是依據(jù)依賴字段。依賴字段的數(shù)據(jù)相同,檢查字段的內(nèi)容也相同則認(rèn)為相同。其它的均認(rèn)為不一致。例如一個(gè)表中字段有10個(gè)字段{a、b、c、d、e、f、g、h、1、j}。依賴字段是{a、b、c}檢查字段是{e、f、g}。依賴字段和檢查字段這兩個(gè)字段互斥,一個(gè)字段是依賴字段就不能是檢查字段,反之亦然。兩個(gè)數(shù)據(jù)源中該表內(nèi)容進(jìn)行比較時(shí),依據(jù)的是依賴字段,來(lái)比較檢查字段。數(shù)據(jù)源A中表tablel的記錄在數(shù)據(jù)源B中表tablel中存在,同時(shí)檢查字段e、f、g這三個(gè)字段的內(nèi)容完全相同,則認(rèn)為相同。[0018]所述一致性檢查模塊中,支持兩個(gè)數(shù)據(jù)源相同數(shù)據(jù)庫(kù)類型的同一表結(jié)構(gòu)數(shù)據(jù)的比較,然后分別列示檢查內(nèi)容設(shè)置模塊中設(shè)置檢查規(guī)則的比較結(jié)果,檢查結(jié)果分為兩類:一致、不一致。比如,不同數(shù)據(jù)源的兩個(gè)待比較庫(kù)A庫(kù)和B庫(kù)。所有檢查字段均相等則檢查結(jié)果為通過(guò)。以下三種情況:①依據(jù)字段相等,其余比較字段不完全相等;②根據(jù)依據(jù)字段進(jìn)行比較,B庫(kù)有A庫(kù)沒(méi)有;③根據(jù)依據(jù)字段進(jìn)行比較,B庫(kù)沒(méi)有A庫(kù)有的檢查結(jié)果為不通過(guò)。[0019]所述映射關(guān)系設(shè)置模塊中,通過(guò)設(shè)置每個(gè)數(shù)據(jù)庫(kù)連接,每個(gè)表的映射關(guān)系,使得在一致性檢查進(jìn)行映射時(shí),通過(guò)表名查找映射ID。[0020]所述檢查結(jié)果歸集模塊中,對(duì)于兩個(gè)庫(kù)中檢查結(jié)果中不相同的項(xiàng),對(duì)當(dāng)前系統(tǒng)中業(yè)務(wù)表無(wú)影響的,手動(dòng)調(diào)整一致,即通過(guò)導(dǎo)出功能,導(dǎo)出excel,對(duì)照著源庫(kù)進(jìn)行調(diào)整;對(duì)于檢查結(jié)果中不一致的基礎(chǔ)數(shù)據(jù),系統(tǒng)中已經(jīng)有業(yè)務(wù)數(shù)據(jù)引用的,通過(guò)工具建立映射。[0021]具體示例:場(chǎng)景1:XX集團(tuán)旗下有多個(gè)產(chǎn)業(yè)單位,統(tǒng)一部署了XXERP產(chǎn)品進(jìn)行企業(yè)信息化管理。該集團(tuán)有多個(gè)網(wǎng)絡(luò),網(wǎng)絡(luò)彼此隔離不連通。由于地域時(shí)間等關(guān)系,各個(gè)子單位使用的該系統(tǒng)的環(huán)境不完全一致。有的子公司應(yīng)用軟件補(bǔ)丁打的較新,有的很多年沒(méi)有動(dòng)過(guò)。現(xiàn)在集團(tuán)層面想要看到各個(gè)子公司的業(yè)務(wù)信息,工作流程上想要打通各個(gè)信息孤島,在內(nèi)網(wǎng)綜合各個(gè)子公司數(shù)據(jù)形成一套業(yè)務(wù)數(shù)據(jù)庫(kù)。準(zhǔn)備上馬XXERP產(chǎn)品的ETL工具。在同一基礎(chǔ)數(shù)據(jù)環(huán)節(jié),碰到了諸如網(wǎng)絡(luò)不通、表結(jié)構(gòu)不盡相同、核心數(shù)據(jù)的區(qū)分等問(wèn)題。最終形成解決方案如圖1所示流程。[0022]步驟一、數(shù)據(jù)庫(kù)連接配置。通過(guò)數(shù)據(jù)庫(kù)導(dǎo)庫(kù)備份、恢復(fù)鏡像庫(kù)的方式把各個(gè)子公司的數(shù)據(jù)庫(kù)整合到一個(gè)網(wǎng)絡(luò)中。[0023]步驟二、檢查內(nèi)容設(shè)置,配置要檢查的表名,依賴字段名稱、檢查字段名稱等內(nèi)容;步驟三、映射關(guān)系設(shè)置,配置某個(gè)數(shù)據(jù)源連接下,某張表的映射關(guān)系,用以映射關(guān)系查找;步驟四、一致性檢查,選擇數(shù)據(jù)源,依據(jù)設(shè)置的檢查內(nèi)容,檢查項(xiàng),進(jìn)行一致性檢查;步驟五、檢查結(jié)果歸集處理;對(duì)所有的檢查項(xiàng)數(shù)據(jù)進(jìn)行映射。檢查項(xiàng)信息一致的直接自動(dòng)映射,檢查項(xiàng)信息不一致的,根據(jù)步驟二中配置的映射字段,手動(dòng)配置映射關(guān)系。后續(xù)ETL過(guò)程中,根據(jù)映射關(guān)系進(jìn)行數(shù)據(jù)轉(zhuǎn)換。[0024]上述【具體實(shí)施方式】?jī)H是本發(fā)明的具體個(gè)案,本發(fā)明的專利保護(hù)范圍包括但不限于上述【具體實(shí)施方式】,任何符合本發(fā)明的一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具的權(quán)利要求書的且任何所屬
技術(shù)領(lǐng)域:
的普通技術(shù)人員對(duì)其所做的適當(dāng)變化或替換,皆應(yīng)落入本發(fā)明的專利保護(hù)范圍?!局鳈?quán)項(xiàng)】1.一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,其特征在于,其具體結(jié)構(gòu)包括:數(shù)據(jù)庫(kù)連接配置模塊,將所有數(shù)據(jù)庫(kù)實(shí)例集中到統(tǒng)一網(wǎng)絡(luò)中;檢查內(nèi)容設(shè)置模塊,用于構(gòu)建檢查規(guī)則;一致性檢查模塊,根據(jù)數(shù)據(jù)庫(kù)配置信息連接兩個(gè)數(shù)據(jù)庫(kù),對(duì)設(shè)置的檢查內(nèi)容進(jìn)行檢查,同時(shí)展示檢查結(jié)果;映射關(guān)系設(shè)置模塊,用于在一致性檢查進(jìn)行映射時(shí),通過(guò)表名查找映射ID;檢查結(jié)果歸集處理模塊,根據(jù)業(yè)務(wù)庫(kù)中當(dāng)前基礎(chǔ)表中數(shù)據(jù)的使用與否,對(duì)檢查不一致的數(shù)據(jù)進(jìn)行歸集處理。2.根據(jù)權(quán)利要求1所述的一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,其特征在于,所述數(shù)據(jù)庫(kù)連接配置模塊中,對(duì)于不在同一網(wǎng)絡(luò)的數(shù)據(jù)庫(kù)實(shí)例,通過(guò)數(shù)據(jù)庫(kù)備份恢復(fù),構(gòu)建鏡像庫(kù)的方式,集中到同一個(gè)網(wǎng)絡(luò)中;然后該模塊在連接中間庫(kù)的應(yīng)用系統(tǒng)中配置待比較數(shù)據(jù)庫(kù)實(shí)例的數(shù)據(jù)庫(kù)連接信息。3.根據(jù)權(quán)利要求1所述的一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,其特征在于,所述檢查內(nèi)容設(shè)置模塊中,檢查規(guī)則的構(gòu)建包括根據(jù)表字段,依賴其字段,檢查字段,其中檢查字段、依賴字段都是該表字段的子集;當(dāng)依賴字段的數(shù)據(jù)相同時(shí),檢查字段的內(nèi)容也相同則認(rèn)為相同;其它的均認(rèn)為不一致。4.根據(jù)權(quán)利要求1所述的一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,其特征在于,所述一致性檢查模塊中,支持兩個(gè)數(shù)據(jù)源相同數(shù)據(jù)庫(kù)類型的同一表結(jié)構(gòu)數(shù)據(jù)的比較,然后分別列示檢查內(nèi)容設(shè)置模塊中設(shè)置檢查規(guī)則的比較結(jié)果,檢查結(jié)果分為兩類:一致、不一致。5.根據(jù)權(quán)利要求1所述的一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,其特征在于,所述映射關(guān)系設(shè)置模塊中,通過(guò)設(shè)置每個(gè)數(shù)據(jù)庫(kù)連接,每個(gè)表的映射關(guān)系,使得在一致性檢查進(jìn)行映射時(shí),通過(guò)表名查找映射ID。6.根據(jù)權(quán)利要求1所述的一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,其特征在于,所述檢查結(jié)果歸集模塊中,對(duì)于兩個(gè)庫(kù)中檢查結(jié)果中不相同的項(xiàng),對(duì)當(dāng)前系統(tǒng)中業(yè)務(wù)表無(wú)影響的,手動(dòng)調(diào)整一致,即通過(guò)導(dǎo)出功能,導(dǎo)出excel,對(duì)照著源庫(kù)進(jìn)行調(diào)整;對(duì)于檢查結(jié)果中不一致的基礎(chǔ)數(shù)據(jù),系統(tǒng)中已經(jīng)有業(yè)務(wù)數(shù)據(jù)引用的,通過(guò)工具建立映射?!緦@勘景l(fā)明公開(kāi)了一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具,具體實(shí)現(xiàn)過(guò)程為:數(shù)據(jù)庫(kù)連接配置模塊,將所有數(shù)據(jù)庫(kù)實(shí)例集中到統(tǒng)一網(wǎng)絡(luò)中;檢查內(nèi)容設(shè)置模塊,用于構(gòu)建檢查規(guī)則;一致性檢查模塊,根據(jù)數(shù)據(jù)庫(kù)配置信息連接兩個(gè)數(shù)據(jù)庫(kù),對(duì)設(shè)置的檢查內(nèi)容進(jìn)行檢查,同時(shí)展示檢查結(jié)果;映射關(guān)系設(shè)置模塊,用于在一致性檢查進(jìn)行映射時(shí),通過(guò)表名查找映射ID;檢查結(jié)果歸集處理模塊,根據(jù)業(yè)務(wù)庫(kù)中當(dāng)前基礎(chǔ)表中數(shù)據(jù)的使用與否,對(duì)檢查不一致的數(shù)據(jù)進(jìn)行歸集處理。該一種可擴(kuò)展的數(shù)據(jù)一致性檢查工具與現(xiàn)有技術(shù)相比,可使得基礎(chǔ)數(shù)據(jù)的清洗合并工作簡(jiǎn)單化,數(shù)據(jù)處理復(fù)雜度降低,解決現(xiàn)有企業(yè)中出現(xiàn)多個(gè)信息孤島的問(wèn)題,實(shí)用性強(qiáng),適用范圍廣泛,易于推廣。【IPC分類】G06F17/30【公開(kāi)號(hào)】CN105069159【申請(qǐng)?zhí)枴緾N201510529529【發(fā)明人】郎松濤,黃存勝,秦操【申請(qǐng)人】浪潮通用軟件有限公司【公開(kāi)日】2015年11月18日【申請(qǐng)日】2015年8月26日