[發(fā)明專利]一種異構(gòu)數(shù)據(jù)庫的一致性校驗(yàn)方法及裝置有效
| 申請?zhí)枺?/td> | 201711023740.7 | 申請日: | 2017-10-27 |
| 公開(公告)號: | CN107807982B | 公開(公告)日: | 2020-09-18 |
| 發(fā)明(設(shè)計(jì))人: | 劉宇帥;丁娜;趙煥芳;楊聲鋼;李俊;郭慶磊 | 申請(專利權(quán))人: | 中國農(nóng)業(yè)銀行股份有限公司 |
| 主分類號: | G06F16/27 | 分類號: | G06F16/27;G06F16/22;G06F16/21 |
| 代理公司: | 北京集佳知識產(chǎn)權(quán)代理有限公司 11227 | 代理人: | 王云曉;王寶筠 |
| 地址: | 100005 北*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù)庫 一致性 校驗(yàn) 方法 裝置 | ||
本申請?zhí)峁┝艘环N異構(gòu)數(shù)據(jù)庫的一致性校驗(yàn)方法及裝置,方法包括:利用哈希計(jì)算進(jìn)程計(jì)算第一數(shù)據(jù)庫中各個(gè)數(shù)據(jù)表的哈希值,并利用哈希計(jì)算進(jìn)程計(jì)算第二數(shù)據(jù)庫中各個(gè)數(shù)據(jù)表的哈希值;將第一數(shù)據(jù)庫中各個(gè)數(shù)據(jù)表的哈希值分別與第二數(shù)據(jù)庫中對應(yīng)的數(shù)據(jù)表的哈希值進(jìn)行比較;當(dāng)?shù)谝粩?shù)據(jù)庫中各個(gè)數(shù)據(jù)表的哈希值與第二數(shù)據(jù)庫中對應(yīng)的數(shù)據(jù)表的哈希值均相同時(shí),確定第一數(shù)據(jù)庫和第二數(shù)據(jù)庫中的數(shù)據(jù)是完全一致的。本申請?zhí)峁┑漠悩?gòu)數(shù)據(jù)庫的一致性校驗(yàn)方法及裝置可大幅減少校驗(yàn)的時(shí)間和空間開銷。
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)庫技術(shù)領(lǐng)域,尤其涉及一種異構(gòu)數(shù)據(jù)庫的一致性校驗(yàn)方法及裝置。
背景技術(shù)
在數(shù)據(jù)庫換庫投產(chǎn)過程中,需要在較短時(shí)間內(nèi)對遷移前后兩個(gè)數(shù)據(jù)庫中的海量數(shù)據(jù)進(jìn)行一致性校驗(yàn)。
目前,對數(shù)據(jù)庫間一致性校驗(yàn)的方法包括:首先分別將兩數(shù)據(jù)庫中各個(gè)數(shù)據(jù)表的數(shù)據(jù)導(dǎo)出為文本文件,然后分別對各文本文件依某種排序規(guī)則進(jìn)行排序,最后依次對各表導(dǎo)出的數(shù)據(jù)文件進(jìn)行文本比較。
由上述一致性校驗(yàn)過程可以看出,現(xiàn)有的對數(shù)據(jù)庫間一致性校驗(yàn)的方法需要分別將兩庫中數(shù)據(jù)導(dǎo)出為文本并進(jìn)行排序,因此,CPU及存儲空間占用極大,并且耗時(shí)較長。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了一種異構(gòu)數(shù)據(jù)庫的一致性校驗(yàn)方法及裝置,用以解決現(xiàn)有技術(shù)中的一致性校驗(yàn)方法CPU及存儲空間占用極大,并且耗時(shí)較長的問題,其技術(shù)方案如下:
一種異構(gòu)數(shù)據(jù)庫的一致性校驗(yàn)方法,所述方法包括:
利用哈希計(jì)算進(jìn)程計(jì)算第一數(shù)據(jù)庫中各個(gè)數(shù)據(jù)表的哈希值,并利用所述哈希計(jì)算進(jìn)程計(jì)算第二數(shù)據(jù)庫中各個(gè)數(shù)據(jù)表的哈希值;
將所述第一數(shù)據(jù)庫中各個(gè)數(shù)據(jù)表的哈希值分別與所述第二數(shù)據(jù)庫中對應(yīng)的數(shù)據(jù)表的哈希值進(jìn)行比較;
當(dāng)所述第一數(shù)據(jù)庫中各個(gè)數(shù)據(jù)表的哈希值與所述第二數(shù)據(jù)庫中對應(yīng)的數(shù)據(jù)表的哈希值均相同時(shí),確定所述第一數(shù)據(jù)庫和第二數(shù)據(jù)庫中的數(shù)據(jù)是完全一致的。
其中,利用所述哈希計(jì)算進(jìn)程計(jì)算數(shù)據(jù)庫中各個(gè)數(shù)據(jù)表的哈希值,包括:
在預(yù)先創(chuàng)建的表名清單中獲取待計(jì)算表名,所述待計(jì)算表名為一待計(jì)算的數(shù)據(jù)表的表名;
獲取與所述待計(jì)算表名對應(yīng)的數(shù)據(jù)表中所包含的各列的列名以及各列的列類型;
利用所述各列的列名以及各列的列類型按預(yù)設(shè)的轉(zhuǎn)換規(guī)則對所述待計(jì)算表名對應(yīng)的數(shù)據(jù)表中各列的數(shù)據(jù)進(jìn)行格式轉(zhuǎn)換,并將轉(zhuǎn)換后的各列數(shù)據(jù)以行為單位進(jìn)行拼接,使每行的各列數(shù)據(jù)拼接成一字符串;
利用所述哈希計(jì)算進(jìn)程和拼接后每行的字符串計(jì)算與所述待計(jì)算表名對應(yīng)的數(shù)據(jù)表的哈希值;
判斷所述表名清單中是否存在待計(jì)算表名,如果是,則轉(zhuǎn)入所述在預(yù)先創(chuàng)建的表名清單中獲取待計(jì)算表名這一步驟。
其中,利用所述哈希計(jì)算進(jìn)程和每行的拼接字符串計(jì)算與所述待計(jì)算表名對應(yīng)的數(shù)據(jù)表的哈希值,包括:
讀取第一行字符串作為目標(biāo)字符串;
利用所述哈希計(jì)算進(jìn)程計(jì)算所述目標(biāo)字符串的哈希值;
判斷所述目標(biāo)字符串所在的行是否為最后一行;
如果是,則將所述目標(biāo)字符串的哈希值確定為與所述待計(jì)算表名對應(yīng)的數(shù)據(jù)表的哈希值;
如果否,則將所述目標(biāo)字符串的哈希值與下一行字符串進(jìn)行拼接,將拼接后的字符串作為新的目標(biāo)字符串,然后轉(zhuǎn)入所述利用所述哈希計(jì)算進(jìn)程計(jì)算所述目標(biāo)字符串的哈希值這一步驟。
其中,所述利用所述各列的列名以及各列的列類型按預(yù)設(shè)的轉(zhuǎn)換規(guī)則對所述待計(jì)算表名對應(yīng)的數(shù)據(jù)表中的待轉(zhuǎn)換列的數(shù)據(jù)進(jìn)行格式轉(zhuǎn)換,包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國農(nóng)業(yè)銀行股份有限公司,未經(jīng)中國農(nóng)業(yè)銀行股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711023740.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)庫
- 數(shù)據(jù)庫管理系統(tǒng)及數(shù)據(jù)庫
- 數(shù)據(jù)庫構(gòu)筑裝置、數(shù)據(jù)庫檢索裝置、數(shù)據(jù)庫裝置、數(shù)據(jù)庫構(gòu)筑方法、以及數(shù)據(jù)庫檢索方法
- 數(shù)據(jù)庫和數(shù)據(jù)庫處理方法
- 數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)庫更新方法、數(shù)據(jù)庫以及數(shù)據(jù)庫更新程序
- 容器數(shù)據(jù)庫
- 數(shù)據(jù)庫同步方法及數(shù)據(jù)庫
- 一種MongoDB數(shù)據(jù)庫對象復(fù)制延遲監(jiān)控方法和裝置
- 數(shù)據(jù)分布式存儲方法、裝置、電子設(shè)備及存儲介質(zhì)
- 數(shù)據(jù)庫語句執(zhí)行方法及裝置
- 一種網(wǎng)絡(luò)驗(yàn)證信息的方法和裝置
- 數(shù)據(jù)安全校驗(yàn)方法、裝置及校驗(yàn)設(shè)備
- XBRL實(shí)例文檔校驗(yàn)方法以及系統(tǒng)
- 一次性可編程存儲裝置以及對其進(jìn)行數(shù)據(jù)校驗(yàn)的方法
- 信息校驗(yàn)方法及裝置
- 一種基于Java系統(tǒng)的數(shù)據(jù)校驗(yàn)方法及系統(tǒng)
- 用于獨(dú)立冗余磁盤陣列的數(shù)據(jù)管理方法、設(shè)備和計(jì)算機(jī)程序產(chǎn)品
- 數(shù)據(jù)校驗(yàn)方法及應(yīng)用系統(tǒng)
- 數(shù)據(jù)校驗(yàn)方法、裝置、電子設(shè)備
- 一種業(yè)務(wù)數(shù)據(jù)校驗(yàn)方法及裝置





