[發(fā)明專利]一種基于canal的數(shù)據(jù)庫雙向同步方法、介質(zhì)及設(shè)備有效
| 申請?zhí)枺?/td> | 202211313441.8 | 申請日: | 2022-10-25 |
| 公開(公告)號: | CN115470302B | 公開(公告)日: | 2023-05-09 |
| 發(fā)明(設(shè)計)人: | 劉鵬;李凡平;王堃 | 申請(專利權(quán))人: | 以薩技術(shù)股份有限公司 |
| 主分類號: | G06F16/27 | 分類號: | G06F16/27;G06F9/54 |
| 代理公司: | 北京鍾維聯(lián)合知識產(chǎn)權(quán)代理有限公司 11579 | 代理人: | 周利星 |
| 地址: | 266000 山東省青島*** | 國省代碼: | 山東;37 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 canal 數(shù)據(jù)庫 雙向 同步 方法 介質(zhì) 設(shè)備 | ||
本發(fā)明公開了一種基于canal的數(shù)據(jù)庫雙向同步方法、介質(zhì)及設(shè)備,包括:當(dāng)目標(biāo)數(shù)據(jù)庫發(fā)生變更操作時,根據(jù)操作日志生成同步數(shù)據(jù)。將同步數(shù)據(jù)發(fā)送至對應(yīng)的專屬存儲空間中。按照第一預(yù)設(shè)周期獲取同步存儲空間中新增的同步數(shù)據(jù)。將新增的同步數(shù)據(jù)對應(yīng)的匹配標(biāo)識與目標(biāo)數(shù)據(jù)庫中的每一條數(shù)據(jù)對應(yīng)的匹配標(biāo)識進行匹配處理。以確定新增的同步數(shù)據(jù)是否為目標(biāo)同步數(shù)據(jù)。將目標(biāo)同步數(shù)據(jù)同步至目標(biāo)數(shù)據(jù)庫中。本申請通過中間服務(wù)作為橋梁實現(xiàn)兩個異構(gòu)網(wǎng)絡(luò)的通信連接。另外,每一目標(biāo)服務(wù)器既具有同步數(shù)據(jù)發(fā)送者的角色,同時還具有同步數(shù)據(jù)接收者的角色。并且會對數(shù)據(jù)進行匹配處理,以保證雙向同步的正常進行,進而提高數(shù)據(jù)的一致性及完整性。
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,特別是涉及一種基于canal的數(shù)據(jù)庫雙向同步方法、介質(zhì)及設(shè)備。
背景技術(shù)
隨著網(wǎng)絡(luò)的普及,網(wǎng)民人數(shù)數(shù)量成幾何增長。在各行各業(yè)進中為了更加精準(zhǔn)有效的進行運作管理,需要保證在兩個異構(gòu)網(wǎng)絡(luò)中的數(shù)據(jù)的一致性,由此,對異構(gòu)網(wǎng)絡(luò)之間的數(shù)據(jù)同步有著極高的要求。如在數(shù)字化政務(wù)場景中,就需要將互聯(lián)網(wǎng)數(shù)據(jù)同步進入到政務(wù)內(nèi)網(wǎng)中。而政務(wù)內(nèi)網(wǎng)與互聯(lián)網(wǎng)就是異構(gòu)網(wǎng)絡(luò),無法進行直通相連。由于,異構(gòu)網(wǎng)絡(luò)之間的數(shù)據(jù)無法進行直接的數(shù)據(jù)庫主從復(fù)制同步,由此,數(shù)據(jù)更加容易形成孤島,不便于使用。
現(xiàn)有技術(shù)中,大部分都是基于數(shù)據(jù)的單向流通同步,無法實現(xiàn)異構(gòu)網(wǎng)絡(luò)之間的數(shù)據(jù)的同步,進而導(dǎo)致兩個異構(gòu)網(wǎng)絡(luò)之間的數(shù)據(jù)的一致性較低,不便于使用。
發(fā)明內(nèi)容
針對上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:
根據(jù)本發(fā)明的一個方面,提供了一種基于canal的數(shù)據(jù)庫雙向同步方法,應(yīng)用于第一系統(tǒng),第一系統(tǒng)包括兩個目標(biāo)服務(wù)器及一個中間服務(wù),兩個目標(biāo)服務(wù)器之間無法進行直接通信連接,中間服務(wù)中配置有每一目標(biāo)服務(wù)器對應(yīng)的消息存儲空間,每一目標(biāo)服務(wù)器均與專屬存儲空間及同步存儲空間通信連接。專屬存儲空間為目標(biāo)服務(wù)器對應(yīng)配置的消息存儲空間。同步存儲空間為與目標(biāo)服務(wù)器進行數(shù)據(jù)同步的目標(biāo)服務(wù)器對應(yīng)的消息存儲空間。
每一所述目標(biāo)服務(wù)器用于實現(xiàn)下述方法:
當(dāng)目標(biāo)數(shù)據(jù)庫發(fā)生變更操作時,根據(jù)操作日志生成同步數(shù)據(jù)。同步數(shù)據(jù)包括數(shù)據(jù)主鍵、操作標(biāo)識及變更后的數(shù)據(jù)本體。目標(biāo)數(shù)據(jù)庫為目標(biāo)服務(wù)器中需要進行數(shù)據(jù)同步的數(shù)據(jù)庫。操作標(biāo)識包括對目標(biāo)數(shù)據(jù)庫的刪除操作標(biāo)識、增加操作標(biāo)識及修改操作標(biāo)識。
將同步數(shù)據(jù)發(fā)送至對應(yīng)的專屬存儲空間中。
按照第一預(yù)設(shè)周期獲取同步存儲空間中新增的同步數(shù)據(jù)。
將新增的同步數(shù)據(jù)對應(yīng)的匹配標(biāo)識與目標(biāo)數(shù)據(jù)庫中的每一條數(shù)據(jù)對應(yīng)的匹配標(biāo)識進行匹配處理。以確定新增的同步數(shù)據(jù)是否為目標(biāo)同步數(shù)據(jù)。匹配標(biāo)識包括新增的同步數(shù)據(jù)的數(shù)據(jù)主鍵及變更后的數(shù)據(jù)本體。
根據(jù)目標(biāo)同步數(shù)據(jù)中對應(yīng)的操作標(biāo)識,將目標(biāo)同步數(shù)據(jù)中對應(yīng)的數(shù)據(jù)主鍵及變更后的數(shù)據(jù)本體同步至目標(biāo)數(shù)據(jù)庫中。
匹配處理包括如下步驟:
當(dāng)新增的同步數(shù)據(jù)的操作標(biāo)識為刪除操作標(biāo)識,且存在同步數(shù)據(jù)的匹配標(biāo)識與目標(biāo)數(shù)據(jù)庫中的一條數(shù)據(jù)的匹配標(biāo)識相同時,將新增的同步數(shù)據(jù)確定為目標(biāo)同步數(shù)據(jù)。
當(dāng)同步數(shù)據(jù)的操作標(biāo)識為修改操作標(biāo)識或增加操作標(biāo)識,且同步數(shù)據(jù)的匹配標(biāo)識與目標(biāo)數(shù)據(jù)庫中的每一條數(shù)據(jù)的匹配標(biāo)識均不相同時,將新增的同步數(shù)據(jù)確定為目標(biāo)同步數(shù)據(jù)。
根據(jù)本發(fā)明的第二個方面,提供了一種非瞬時性計算機可讀存儲介質(zhì),非瞬時性計算機可讀存儲介質(zhì)存儲有計算機程序,計算機程序被處理器執(zhí)行時實現(xiàn)上述的一種基于canal的數(shù)據(jù)庫雙向同步方法。
根據(jù)本發(fā)明的第三個方面,提供了一種電子設(shè)備,包括存儲器、處理器以及存儲在存儲器中并可在處理器上運行的計算機程序,處理器執(zhí)行計算機程序時實現(xiàn)上述的一種基于canal的數(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/202211313441.8/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種基于canal和kafka實現(xiàn)實時數(shù)倉的系統(tǒng)
- 基于canal實現(xiàn)數(shù)據(jù)脫敏的一種方法
- 一種基于canal實現(xiàn)數(shù)據(jù)脫敏的方法
- 適用于MySQL中客戶數(shù)據(jù)的并行異構(gòu)方法、系統(tǒng)、介質(zhì)及設(shè)備
- 將MySQL數(shù)據(jù)庫同步到Elasticsearch的方法
- 基于Canal的數(shù)據(jù)處理方法及裝置
- Redis-canal跨機房緩存同步系統(tǒng)
- 一種基于canal平臺的數(shù)據(jù)同步方法
- 一種海量開票數(shù)據(jù)實時存儲和大規(guī)模并行訪問方法及系統(tǒng)
- 一種實現(xiàn)MySQL數(shù)據(jù)自由恢復(fù)的方法及系統(tǒ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í)行方法及裝置





