欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種數(shù)據(jù)庫同步方法、同步設備及系統(tǒng)的制作方法

文檔序號:9810636閱讀:1010來源:國知局
一種數(shù)據(jù)庫同步方法、同步設備及系統(tǒng)的制作方法
【技術領域】
[0001]本發(fā)明涉及數(shù)據(jù)庫領域,尤其涉及一種數(shù)據(jù)庫同步方法、同步設備及系統(tǒng)。
【背景技術】
[0002]由于大數(shù)據(jù)和云計算的發(fā)展,在互聯(lián)網(wǎng)行業(yè)中,往往將數(shù)據(jù)庫進行跨機房特別是異地跨機房部署,各機房的數(shù)據(jù)庫進行鏡像或者同步,以進行容災備份,來防止意外事件引起的數(shù)據(jù)損失,保障業(yè)務連續(xù)性。同時,在進行大數(shù)據(jù)分析時會遇到源數(shù)據(jù)信息分布在不同的機房數(shù)據(jù)庫中,無法進行實時統(tǒng)一的數(shù)據(jù)分析和計算。
[0003]針對跨機房特別是異地跨機房的數(shù)據(jù)庫同步,現(xiàn)有技術中,一種方法是定時下載源數(shù)據(jù)庫的數(shù)據(jù)并且通過網(wǎng)絡傳輸在跨機房的目的數(shù)據(jù)庫上進行同步。另一種通用方法是基于數(shù)據(jù)庫自有的同步功能,通過數(shù)據(jù)庫DML(英文全稱:data manipulat1n language,中文:數(shù)據(jù)操縱語言)/DDL(英文全稱:data definit1n language,中文:數(shù)據(jù)控制語句)變更日志解析來同步數(shù)據(jù),即每當源機房的數(shù)據(jù)庫發(fā)生DML/DDL變更,即將該變更相關數(shù)據(jù)發(fā)送給目的機房的數(shù)據(jù)庫,由目的機房的數(shù)據(jù)庫相應地執(zhí)行一次DML/DDL變更,以達到源機房的數(shù)據(jù)庫和目的機房的數(shù)據(jù)庫保持一致的目的。上述數(shù)據(jù)庫同步方法均是針對相同類型的跨機房數(shù)據(jù)庫之間的數(shù)據(jù)同步。
[0004]但是,在大數(shù)據(jù)分析處理領域中,所針對的往往是不同類型的數(shù)據(jù)庫,需要將不同類型的源機房數(shù)據(jù)庫上的數(shù)據(jù)同步到位于異地機房的大數(shù)據(jù)分析系統(tǒng)的數(shù)據(jù)庫上。目前,上述基于相同類型的跨機房數(shù)據(jù)庫的同步方法無法解決該問題。

【發(fā)明內容】

[0005]本發(fā)明的實施例提供一種數(shù)據(jù)庫同步方法、同步設備及系統(tǒng),用于解決不能將不同類型的源機房的數(shù)據(jù)庫上的數(shù)據(jù)同步到目的機房的數(shù)據(jù)庫的問題。
[0006]為達到上述目的,本發(fā)明的實施例采用如下技術方案:
[0007]第一方面,提供一種數(shù)據(jù)庫同步方法,應用于至少一個源機房設備與目的機房設備之間的同步設備,包括:
[0008]同步設備模擬源機房設備的數(shù)據(jù)庫從屬節(jié)點;
[0009 ]同步設備向源機房設備發(fā)送同步請求;
[0010]同步設備接收源機房設備根據(jù)同步請求發(fā)送的同步數(shù)據(jù);
[0011 ]同步設備將同步數(shù)據(jù)發(fā)送至目的機房設備。
[0012]第二方面,提供一種同步設備,應用于至少一個源機房設備與目的機房設備之間,包括:
[0013]處理單元,用于模擬源機房設備的數(shù)據(jù)庫從屬節(jié)點;
[0014]發(fā)送單元,用于向源機房設備發(fā)送同步請求;
[0015]接收單元,用于接收由源機房設備根據(jù)同步請求發(fā)送的同步數(shù)據(jù);
[0016]發(fā)送單元,還用于將同步數(shù)據(jù)發(fā)送至目的機房設備。
[0017]第三方面,提供一種數(shù)據(jù)庫系統(tǒng),包括:至少一個源機房設備,目的機房設備和同步設備,其中目的機房設備通過同步設備連接至至少一個源機房設備;
[0018]該同步設備為以上所述的同步設備。
[0019]本發(fā)明的實施例提供的數(shù)據(jù)庫同步方法、同步設備及系統(tǒng),通過使用設置在至少一個源機房設備與目的機房設備之間的同步設備分別模擬至少一個源機房設備的數(shù)據(jù)庫從屬節(jié)點,從而實現(xiàn)了同步設備與源機房設備的數(shù)據(jù)交互,同步設備通過同步請求獲取向源機房設備請求的同步數(shù)據(jù)后發(fā)送至目的機房設備,解決不能將不同類型的源機房的數(shù)據(jù)庫上的數(shù)據(jù)同步到目的機房的數(shù)據(jù)庫的問題。
【附圖說明】
[0020]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0021]圖1為本發(fā)明的實施例提供的一種數(shù)據(jù)庫系統(tǒng)結構示意圖;
[0022]圖2為本發(fā)明的實施例提供的一種數(shù)據(jù)庫同步方法的流程示意圖;
[0023]圖3為本發(fā)明的實施例提供的另一種數(shù)據(jù)庫同步方法的流程示意圖;
[0024]圖4為本發(fā)明的實施例提供的一種同步設備的結構示意圖。
【具體實施方式】
[0025]下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0026]本發(fā)明在源數(shù)據(jù)庫所在的至少一個源機房設備與目的數(shù)據(jù)庫所在的目的機房設備之間添加同步設備,該同步設備根據(jù)源數(shù)據(jù)庫的業(yè)務數(shù)據(jù)類型,模擬各源數(shù)據(jù)庫的從屬節(jié)點,此時該同步設備相當于與各源數(shù)據(jù)庫類型相同的數(shù)據(jù)庫,由同步設備向源數(shù)據(jù)庫發(fā)送同步請求用以請求同步數(shù)據(jù),源數(shù)據(jù)庫收到該同步請求后將該源數(shù)據(jù)庫的同步數(shù)據(jù)發(fā)送給同步設備,同步設備獲取同步數(shù)據(jù)之后發(fā)送給目的數(shù)據(jù)庫。其中,同步數(shù)據(jù)通常是指源數(shù)據(jù)庫的全部數(shù)據(jù)或者源數(shù)據(jù)庫的更新數(shù)據(jù),業(yè)務數(shù)據(jù)庫是指存儲一定類型的業(yè)務數(shù)據(jù)的數(shù)據(jù)庫。
[0027]本發(fā)明的實施例提供一種數(shù)據(jù)庫系統(tǒng),參照圖1所示,包括至少一個源機房設備
10、同步設備20、目的機房設備30,其中,源機房設備10中存儲源數(shù)據(jù)庫,目的機房設備20中存儲目的數(shù)據(jù)庫,每一個源機房設備10均通過同步設備20與目的機房設備30連接。本發(fā)明的數(shù)據(jù)庫系統(tǒng)用于將源機房設備10中的數(shù)據(jù)庫同步至目的機房設備30中的數(shù)據(jù)庫。
[0028]本發(fā)明的實施例提供一種數(shù)據(jù)庫同步方法,應用于上述數(shù)據(jù)庫系統(tǒng),具體參照圖2所示,包括以下步驟:
[0029]201、同步設備模擬源機房設備的數(shù)據(jù)庫從屬節(jié)點。
[0030]同步設備模擬源機房設備的數(shù)據(jù)庫從屬節(jié)點,以建立源機房設備與同步設備的主從數(shù)據(jù)庫關系,其目的在于,將同步設備偽裝成源機房設備中的數(shù)據(jù)庫的從屬節(jié)點,以利用相同類型的數(shù)據(jù)庫同步技術來獲取源數(shù)據(jù)庫的同步數(shù)據(jù)。其中,同步數(shù)據(jù)通常為:源數(shù)據(jù)庫的全部數(shù)據(jù),或者源數(shù)據(jù)庫的更新數(shù)據(jù)。
[0031]202、同步設備向源機房設備發(fā)送同步請求。
[0032 ] 203、同步設備接收源機房設備根據(jù)同步請求發(fā)送的同步數(shù)據(jù)。
[0033]由于同步設備模擬了源機房設備的數(shù)據(jù)庫從屬節(jié)點,當源機房設備接收到來自同步設備的同步請求之后,會將該源機房設備上的數(shù)據(jù)庫的同步數(shù)據(jù)反饋給同步設備,然后由同步設備接收該同步數(shù)據(jù)。
[0034]204、同步設備將同步數(shù)據(jù)發(fā)送至目的機房設備。
[0035]上述實施例提供的數(shù)據(jù)庫同步方法,通過使用設置在至少一個源機房設備與目的機房設備之間的同步設備分別模擬至少一個源機房設備的數(shù)據(jù)庫從屬節(jié)點,從而實現(xiàn)了同步設備與源機房設備的數(shù)據(jù)交互,同步設備通過同步請求獲取向源機房設備請求的同步數(shù)據(jù)后發(fā)送至目的機房設備,解決不能將不同類型的源機房的數(shù)據(jù)庫上的數(shù)據(jù)同步到目的機房的數(shù)據(jù)庫的問題。
[0036]本發(fā)明的實施例提供了另一種數(shù)據(jù)庫同步方法,參照圖3,包括以下步驟:
[0037]301、同步設備根據(jù)源機房設備的數(shù)據(jù)庫從屬節(jié)點協(xié)議與源機房設備建立同步管道。
[0038]示例性的,在MySQL(—種關系型數(shù)據(jù)庫管理系統(tǒng))數(shù)據(jù)庫系統(tǒng)框架下,該從屬節(jié)點協(xié)議為My SQlJtlMaster-Slave (主-從)協(xié)議。
[0039]302、同步設備通過數(shù)據(jù)庫私有協(xié)議向源機房設備發(fā)送同步請求。
[0040]進一步可選的,同步請求包括:數(shù)據(jù)庫日志文件名和對應數(shù)據(jù)庫日志文件的起始位置(英文名稱:posit1n)信息,其中,數(shù)據(jù)庫日志文件記錄對數(shù)據(jù)發(fā)生或潛在發(fā)生更改的SQL語句,起始位置信息包括數(shù)據(jù)庫日志文件在存儲空間中的起始位置,并且其中,數(shù)據(jù)庫日志文件名和對應數(shù)據(jù)庫日志文件的起始位置信息為同步設備從源機房設備歷次發(fā)送的同步數(shù)據(jù)中獲取,特別地,在MySQL數(shù)據(jù)庫中,數(shù)據(jù)庫日志文件為binlog文件。
[0041]303、同步設備接收源機房設備根據(jù)同步請求發(fā)送的同步數(shù)據(jù)。
[0042]具體的,該同步數(shù)據(jù)為源數(shù)據(jù)庫的更新數(shù)據(jù)產(chǎn)生的新的數(shù)據(jù)庫日志文件,特別地,在MySQL數(shù)據(jù)庫中,數(shù)據(jù)庫日志文件為binlog文件。
[0043]304、同步設備解析同步數(shù)據(jù);
[0044]步驟304中是對同步數(shù)據(jù)按照數(shù)據(jù)庫協(xié)議規(guī)則做協(xié)議解析。
[0045]305、同步設備根據(jù)配置,在解析后的同步數(shù)據(jù)中過濾出所述配置指示需要同步的整庫和/或表,并在過濾后的同步數(shù)據(jù)中增加源數(shù)據(jù)庫信息。
[0046]其中,所述源數(shù)據(jù)庫信息包括源數(shù)據(jù)庫IP(internet protocol,網(wǎng)絡互聯(lián)協(xié)議)地址、源數(shù)據(jù)庫端口號、源數(shù)據(jù)庫描述信息,所述過濾包括對庫和表的過濾。示例性的,該步驟中可以將源數(shù)據(jù)庫(database)的名稱作為同步數(shù)據(jù)的top i c。
[0047]306、同步設備將同步數(shù)據(jù)發(fā)送至目的機房設備。
[0048]由于本申請中的同步設備為在系統(tǒng)架構中的新增設備,為提高數(shù)據(jù)傳輸?shù)陌踩院蛡鬏斝?,同步設備在將同步數(shù)據(jù)按序列化的格式打包,然后經(jīng)過加密、壓縮,將最終數(shù)據(jù)包通過專線或外網(wǎng)發(fā)送到目的機房設備。其中,示例性的步驟306中同步設備通過HTTP(hyperText transfer protocol,超文本傳輸協(xié)議)協(xié)議將同步數(shù)據(jù)發(fā)送給目的機房設備。
[0049]對于接收到的來自不同源機房設備的同步數(shù)據(jù),目的機房設備進行如下步驟處理:
[0050]307、目的機房設備接收同步設備發(fā)送的同步數(shù)據(jù)。
[0051 ]其中,在步驟306中同步設備通過HTTP協(xié)議將同步數(shù)據(jù)發(fā)送給目的機房設備時,在步驟307具體為,目的機房通過Nginx(HTTP的反向代理服務)接收同步設備發(fā)送的同步數(shù)據(jù)。
[0052]308、目的機房設備將同步數(shù)據(jù)通過同步接口層設備存儲至分布式消息中間件。
[0053]目的機房的同步代理接收同步數(shù)據(jù)后,將同步數(shù)據(jù)轉發(fā)至同步接口層設備(英文I.: sync-applicat1n programming interface,: syncapi),
備可以配置有對同步數(shù)據(jù)的路由配置,以保證同一 topic的同步數(shù)據(jù)通過同一個同步接口層設備處理。同步接口層設備將數(shù)據(jù)解密,按
當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
屏山县| 通化县| 雷山县| 贵阳市| 广平县| 巴林左旗| 交城县| 郸城县| 玛多县| 茌平县| 威信县| 农安县| 军事| 磐石市| 新乡县| 阳西县| 新龙县| 双牌县| 民县| 通渭县| 巨野县| 绍兴市| 凌云县| 邢台县| 新建县| 芮城县| 渭南市| 榆社县| 株洲县| 连山| 曲阜市| 昌平区| 阿荣旗| 兰州市| 水城县| 买车| 邓州市| 玉溪市| 藁城市| 阿鲁科尔沁旗| 沾化县|