[發(fā)明專利]一種異構(gòu)數(shù)據(jù)庫平臺數(shù)據(jù)的同步方法有效
| 申請?zhí)枺?/td> | 201410631561.1 | 申請日: | 2014-11-11 |
| 公開(公告)號: | CN104376062B | 公開(公告)日: | 2018-01-26 |
| 發(fā)明(設(shè)計)人: | 范志龍;吳松林 | 申請(專利權(quán))人: | 中國有色金屬長沙勘察設(shè)計研究院有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 長沙七源專利代理事務(wù)所(普通合伙)43214 | 代理人: | 歐穎,鄭雋 |
| 地址: | 410011 湖*** | 國省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù)庫 平臺 數(shù)據(jù) 同步 方法 | ||
技術(shù)領(lǐng)域
本申請涉及數(shù)據(jù)庫數(shù)據(jù)同步領(lǐng)域,特別地,涉及一種異構(gòu)數(shù)據(jù)庫平臺數(shù)據(jù)的同步方法。
背景技術(shù)
現(xiàn)有技術(shù)中,國外大多數(shù)數(shù)據(jù)庫廠商提供了數(shù)據(jù)復(fù)制的功能,而且一般都支持異構(gòu)數(shù)據(jù)庫間的復(fù)制,如MS SQL Server、Oracle、Sybase等,也開發(fā)了能作為數(shù)據(jù)導(dǎo)入導(dǎo)出工具的產(chǎn)品,如SQLServer2000的DTS。有一些軟件商開發(fā)的復(fù)制中間件應(yīng)用于數(shù)據(jù)復(fù)制領(lǐng)域,如比較知名的有PeerDirect公司的PDRE、SynchroLogic公司的SyncKit、Syware公司的DataSync等。這些方法的優(yōu)點(diǎn)在于它們獨(dú)立于數(shù)據(jù)庫系統(tǒng)本身,能夠解決各種異構(gòu)問題;能夠適應(yīng)主從復(fù)制和同步復(fù)制;能夠提供豐富的API,可擴(kuò)展性好。
但現(xiàn)有產(chǎn)品仍然存在一些缺陷:
1、異構(gòu)數(shù)據(jù)庫數(shù)據(jù)的同步/復(fù)制大都依賴于數(shù)據(jù)庫管理系統(tǒng)的支持,普遍存在著符合某種體系結(jié)構(gòu)或標(biāo)準(zhǔn)的前提,因此兼容性欠缺,故應(yīng)用范圍受到一定的限制;復(fù)制中間件只針對一部分應(yīng)用領(lǐng)域或者只針對某些特定的異構(gòu)平臺,并不能廣泛應(yīng)用。
2、數(shù)據(jù)庫廠商提供的異構(gòu)數(shù)據(jù)庫間的復(fù)制對異構(gòu)的支持程度比較有限:
例如:MSSQLServer的復(fù)制方案對網(wǎng)絡(luò)要求高,如果因網(wǎng)絡(luò)故障或其他原因找不到目標(biāo)數(shù)據(jù)庫則復(fù)制功能會直接down掉,需要復(fù)制的表在使用過程中不能經(jīng)常變動表結(jié)構(gòu);Oracle的復(fù)制方案配置和管理比較復(fù)雜,需要有專業(yè)的技術(shù)人員處理;Sybase的復(fù)制方案數(shù)據(jù)和網(wǎng)絡(luò)的流量大,且配置困難;DB2復(fù)制方案CCD表要占用較多的系統(tǒng)資源,如存儲空間和進(jìn)程等,需要安裝各種數(shù)據(jù)庫的客戶端,通過客戶端連接到其他類型的數(shù)據(jù)庫。
3、數(shù)據(jù)庫數(shù)據(jù)同步/復(fù)制的方法存在針對性較強(qiáng),缺乏普遍的適用性,難以進(jìn)行二次開發(fā)以及不能進(jìn)行持續(xù)的數(shù)據(jù)集成的問題。
發(fā)明內(nèi)容
本申請目的在于提供一種異構(gòu)數(shù)據(jù)庫平臺數(shù)據(jù)的同步方法,以解決現(xiàn)有技術(shù)的多源、分布式、異構(gòu)數(shù)據(jù)庫平臺數(shù)據(jù)同步/復(fù)制的局限性和兼容性不足的技術(shù)問題。
為實現(xiàn)上述目的,本申請?zhí)峁┝艘环N異構(gòu)數(shù)據(jù)庫平臺數(shù)據(jù)的同步方法,包括以下步驟:
A、在PostgreSQL數(shù)據(jù)庫中分別安裝與源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫對應(yīng)的的第一外部數(shù)據(jù)交換模塊和第二外部數(shù)據(jù)交換模塊,并建立第一外部數(shù)據(jù)交換模塊擴(kuò)展及第一外部服務(wù)器、第二外部數(shù)據(jù)交換模塊擴(kuò)展及第二外部服務(wù)器;
所述源數(shù)據(jù)庫和所述目標(biāo)數(shù)據(jù)庫為異構(gòu)數(shù)據(jù)庫;外部數(shù)據(jù)交換模塊包括預(yù)定義的數(shù)據(jù)類型映射文件;
B、基于第一外部服務(wù)器和第二外部服務(wù)器,創(chuàng)建分別與源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫建立映射關(guān)系的第一外部數(shù)據(jù)表和第二外部數(shù)據(jù)表;
C、基于第一外部數(shù)據(jù)表和/或第二外部數(shù)據(jù)表,分別建立捕捉數(shù)據(jù)變更的觸發(fā)器。
優(yōu)選的,在所述源數(shù)據(jù)庫和所述目標(biāo)數(shù)據(jù)庫需要更新的數(shù)據(jù)表上,建立捕捉數(shù)據(jù)變更的觸發(fā)器。
優(yōu)選的,步驟B中建立映射關(guān)系為:
創(chuàng)建PostgreSQL數(shù)據(jù)庫角色與所述源數(shù)據(jù)庫、目標(biāo)數(shù)據(jù)庫角色的映射。
優(yōu)選的,所述映射關(guān)系以文件形式保存。
優(yōu)選的,所述源數(shù)據(jù)庫和所述目標(biāo)數(shù)據(jù)庫為MSSQL Server、Oracle、DB2、Sybase、MySQL、PostgreSQL中的任意一種。
優(yōu)選的,所述源數(shù)據(jù)庫和所述目標(biāo)數(shù)據(jù)庫的基礎(chǔ)操作系統(tǒng)為Unix、Windows NT、Linux中的任意一種。
本申請具有以下有益效果:
本申請創(chuàng)新性的采用開源數(shù)據(jù)庫PostgreSQL為中間數(shù)據(jù)庫,綜合利用開源DBMS及其外部數(shù)據(jù)交換模塊實現(xiàn)多源、分布式、異構(gòu)數(shù)據(jù)庫平臺業(yè)務(wù)數(shù)據(jù)的同步/復(fù)制,包括PostgreSQL數(shù)據(jù)庫相應(yīng)外部數(shù)據(jù)交換模塊的安裝、外部數(shù)據(jù)交換模塊的建立、映射用戶的創(chuàng)建、外部數(shù)據(jù)表的創(chuàng)建;能夠?qū)崿F(xiàn)多種異構(gòu)數(shù)據(jù)庫平臺數(shù)據(jù)的同步,包括但不限于:Oracle、MSSQLServer、MySQL、PostgreSQL。
本申請的同步方法由于采用的是開源數(shù)據(jù)庫PostgreSQL作為中間數(shù)據(jù)庫,各異構(gòu)源數(shù)據(jù)庫或目標(biāo)數(shù)據(jù)庫需同步/復(fù)制的表在PostgreSQL中分別對應(yīng)不同的外部數(shù)據(jù)表,異構(gòu)數(shù)據(jù)庫之間數(shù)據(jù)的同步/復(fù)制是通過在PostgreSQL中映射的外部數(shù)據(jù)表來實現(xiàn)的,只要保證源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫相對PostgreSQL數(shù)據(jù)庫的正常連接和訪問即可實現(xiàn)異構(gòu)數(shù)據(jù)庫數(shù)據(jù)的順暢同步/復(fù)制。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國有色金屬長沙勘察設(shè)計研究院有限公司,未經(jīng)中國有色金屬長沙勘察設(shè)計研究院有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410631561.1/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í)行方法及裝置
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





