[發明專利]一種數據庫同步方法有效
| 申請號: | 201210505159.X | 申請日: | 2012-11-29 |
| 公開(公告)號: | CN103853748A | 公開(公告)日: | 2014-06-11 |
| 發明(設計)人: | 邢浩;金友兵 | 申請(專利權)人: | 天津書生投資有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 300308 天津市濱海新*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據庫 同步 方法 | ||
技術領域
本發明涉及數據庫領域,特別涉及一種數據庫同步方法。
技術背景
現有技術中關系型數據庫之間的同步以主、從同步為主。主從同步方式只能由主庫向從庫同步,不能由從庫向主庫寫數據。多數據中心情況下,每個數據中心之間的數據庫同步也是主從模式,因此通常采用由一個主數據中心生產數據向多個從數據中心進行數據同步,這種方式從數據中心獲取數據的延時較大,用戶寫入的數據往往不能被馬上讀取到,影響用戶體驗。
發明內容
有鑒于此,本發明實施例提供一種數據庫同步方法,實現數據庫的快速安全同步。
為了達到上述目的,本發明實施例提供的一種數據庫同步方法,用于同步多數據中心之間的數據,其中每一個數據中心均包括一個第一分片調度主庫,所述第一分片調度主庫存儲數據分片的索引信息,所述數據庫同步方法包括:
采用環形同步方式,逐一將每個數據中心的第一分片調度主庫都作為前一個數據中心的分片調度從庫,進行同步,直至遍歷每一個數據中心。
采用多數據中心生產數據的方式,同時利用環形同步的方式對多個數據中心數據進行同步,多個數據中心之間不是單純的由主數據中心向從數據中心同步的過程,而是每個數據中心都生產數據,每個數據中心也都接受數據。而在這種模式下,用戶可以在每個數據中心都能讀、寫數據,所以不會有延遲的問題。
附圖說明
圖1所示為本發明一實施例數據庫同步方法的示意圖。
圖2所示為本發明一實施例數據庫同步方法的示意圖。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚,下面結合附圖對本發明作進一步的詳細描述。
圖1所示為本發明一實施例數據庫同步方法的示意圖。如圖1所示,
在多數據中心生產數據的情況下,以四個數據中心A、B、C、D為例說明,每個數據中心有多組主從數據庫分片節點(圖示中的Master和Slave)構成,每個數據庫只存儲每個數據中心的一部分數據,分片調度庫(圖示中的Convert?Master?1,Convert?Master?2以及Convert?Slave),又稱分片索引庫,存儲數據分片的索引信息,包括被分片的數據ID以及存儲該條數據在數據庫節點信息。
當需要對多個數據中心的數據進行同步時,采用環形復制方式,將每個數據中心的主庫都作為前一個數據中心的從庫,同時單個數據中心內的Convert?Master?1和Convert?Master?2互為備份,以保證整個環形復制的正常運轉。
具體來說,當A、B、C、D多個數據中心需要進行數據同步時,首先同步數據中心A和B,即將數據由數據中心A同步到數據中心B;而后將數據中心B同步到數據中心C,將數據中心C同步到數據中心D,最后將數據中心D同步到數據中心A。在此環形同步過程中,可以是每個同步數據中心的Convert?Master?1或Convert?Master?2任意一個參與同步,比如可以是將數據中心A的Convert?Master?1同步到數據中心B的Convert?Master?2,而將數據中心B的Convert?Master?2同步到數據中心C的Convert?Master?2。
同時,在每個數據中心內部,每當該數據中心完成與其它數據中心的同步后,即將參與環形同步的Convert?Master中的數據寫入到未參與環形同步的Convert?Master中,兩個Convert?Master庫互為備份,形成高可用架構,一旦參與環形同步的Convert?Master庫出問題,可以切換至另一個Convert?Master,保證整個環形復制的正常運轉。
圖2所示為本發明一實施例數據庫同步系統示意圖。在圖2中,在關系型數據庫的基礎上引用了分布式數據庫。采用關系型數據庫和分布式數據庫同時保存生產數據,協同工作,以構建云存儲環境下的數據庫系統。在多數據中心情況下,采用如圖1所示的環形同步方式對關系型數據庫的數據進行同步,再由關系型數據庫同步至本地分布式數據庫,來保證每個數據中心分布式數據庫的數據一致。
具體來說,獲取對關系型數據庫的所有操作包括增、刪、改、事務提交、事務回滾等,轉換為關系型數據庫相應的sql;
將關系型數據庫的sql轉換為分布式數據庫的相應執行語句;具體轉換哪種語句取決于分布式數據庫的類型;
將轉換后的語句寫入一個二進制文件,可標記為transfer?log;
分布式數據庫直接讀取transfer?log中所要執行的操作語句,并在分布式數據庫中執行相應的操作。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于天津書生投資有限公司,未經天津書生投資有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210505159.X/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:表面貼裝型過電流保護元件
- 下一篇:一種用于制造鏈輪的特殊鋼





