成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

基于Maxwell的MySQL數(shù)據(jù)傳輸服務(wù)整體設(shè)計(jì)

數(shù)據(jù)庫(kù) MySQL
最近對(duì)整體的DTS(數(shù)據(jù)傳輸系統(tǒng))做了整體的開發(fā)設(shè)計(jì),目前在做的是從數(shù)據(jù)庫(kù)到大數(shù)據(jù)庫(kù)側(cè)的數(shù)據(jù)傳輸對(duì)接,先放出來(lái)一部分拋磚引玉。

 最近對(duì)整體的DTS(數(shù)據(jù)傳輸系統(tǒng))做了整體的開發(fā)設(shè)計(jì),目前在做的是從數(shù)據(jù)庫(kù)到大數(shù)據(jù)庫(kù)側(cè)的數(shù)據(jù)傳輸對(duì)接,先放出來(lái)一部分拋磚引玉。

[[337628]]

數(shù)據(jù)傳輸服務(wù)(DTS)支持關(guān)系型數(shù)據(jù)庫(kù)、NoSQL、大數(shù)據(jù)等數(shù)據(jù)源間的數(shù)據(jù)傳輸。它是一種集數(shù)據(jù)遷移、數(shù)據(jù)同步及數(shù)據(jù)訂閱于一體的數(shù)據(jù)傳輸服務(wù)。

本次主要圍繞MySQL到Kudu的數(shù)據(jù)同步進(jìn)行建設(shè),采用基于 MySQL Binlog進(jìn)行數(shù)據(jù)同步的解決方案,覆蓋全量、增量、全量+增量三種同步模型,支持?jǐn)?shù)據(jù)同步的秒級(jí)延遲,任務(wù)異常的斷點(diǎn)續(xù)傳,以及數(shù)據(jù)的不丟、不亂、不重;

1.系統(tǒng)整體設(shè)計(jì)

系統(tǒng)的整體設(shè)計(jì)圖如下:

 

其中DTS為平臺(tái)前端,可以采用專業(yè)前端團(tuán)隊(duì)支持。

數(shù)據(jù)傳輸系統(tǒng)DTS為獨(dú)立的業(yè)務(wù)系統(tǒng),目前為重新構(gòu)建,為實(shí)現(xiàn)初步初版,基線版本為數(shù)據(jù)庫(kù)運(yùn)維系統(tǒng)的當(dāng)前版本,后續(xù)只維護(hù)DTS側(cè)相關(guān)邏輯。

其中DTS為了考慮后續(xù)的擴(kuò)展性和可維護(hù)性,會(huì)基于reader,write,service三個(gè)大體的模塊來(lái)構(gòu)建,reader,writer可以根據(jù)具體的技術(shù)方向進(jìn)行細(xì)分。

關(guān)聯(lián)系統(tǒng)為數(shù)據(jù)庫(kù)運(yùn)維系統(tǒng),任務(wù)系統(tǒng),大數(shù)據(jù)管理系統(tǒng),對(duì)于這些關(guān)聯(lián)系統(tǒng)的元數(shù)據(jù)和部分邏輯功能會(huì)有相關(guān)調(diào)用。

整個(gè)數(shù)據(jù)傳輸服務(wù)流程中,一個(gè)基礎(chǔ)的屬性是task_code,這是在DTS任務(wù)新建,中端數(shù)據(jù)傳輸,后端服務(wù)集成中的共同屬性,task_code的含義即為client_id,格式為:dts_[idc]_[maxwell_ip]_[maxwell_code],后端服務(wù)的topic會(huì)基于client_id附加數(shù)據(jù)庫(kù)和表信息組合而成。

當(dāng)在DTS前端頁(yè)面中輸入了基礎(chǔ)信息(如數(shù)據(jù)庫(kù)IP,端口等)后,會(huì)調(diào)用中端的服務(wù)接口生成相應(yīng)的client_id,后端服務(wù)會(huì)根據(jù)DTS任務(wù)列表中的task_code為基準(zhǔn)進(jìn)行任務(wù)管理,而中端服務(wù)會(huì)根據(jù)client_id進(jìn)行相應(yīng)的同步對(duì)象配置管理/服務(wù)啟停等操作。

相關(guān)的數(shù)據(jù)傳輸流如下:

 

2.中端管理設(shè)計(jì)

中端管理主要是基于Maxwell的部署管理,配置管理,同步對(duì)象列表變更,服務(wù)管理(啟動(dòng),停止),服務(wù)自管理和監(jiān)控報(bào)警,目前的實(shí)現(xiàn)主要基于API,初步實(shí)現(xiàn)本地前端。

2.1. 部署管理

部署管理主要是對(duì)Maxwell服務(wù)部署實(shí)現(xiàn)平臺(tái)化管理,目前Maxwell應(yīng)用服務(wù)器有2臺(tái),分別是130.200和130.201,檔案數(shù)據(jù)庫(kù)為Maxwell服務(wù)基礎(chǔ)配置數(shù)據(jù)和Maxwell啟動(dòng)初始化的數(shù)據(jù)庫(kù)基礎(chǔ)元數(shù)據(jù)。

通過平臺(tái)化部署能夠?qū)崿F(xiàn)如下的幾個(gè)功能:

1)能夠?qū)崿F(xiàn)自動(dòng)尋址,為Maxwell新增同步任務(wù)匹配相應(yīng)的應(yīng)用服務(wù)器,在后續(xù)新增應(yīng)用服務(wù)器的情況下能夠快速調(diào)整和適配

 

2)如果已在服務(wù)器A上部署了實(shí)例B的maxwell服務(wù),則新增數(shù)據(jù)同步任務(wù)時(shí),需要復(fù)用已有的maxwell服務(wù)配置,不需要在新的服務(wù)器中重新配置。

3)服務(wù)配置的基礎(chǔ)準(zhǔn)備工作,如Maxwell相關(guān)的賬號(hào)和防火墻開通等工作,需要通過腳本化管理方式支持,以API形式提供接入,目前統(tǒng)一的maxwell接入賬戶為:dba_maxwell_repl

① 數(shù)據(jù)庫(kù)主庫(kù)Master端開通防火墻權(quán)限,創(chuàng)建相應(yīng)的數(shù)據(jù)庫(kù)賬戶

② 數(shù)據(jù)庫(kù)從庫(kù)Slave端開通防火墻權(quán)限

4)MySQL服務(wù)的拓?fù)涔芾砘跀?shù)據(jù)庫(kù)運(yùn)維管理系統(tǒng),需要封裝相應(yīng)的API得到Slave信息,同時(shí)需要在Maxwell配置列表中維護(hù)管理。

補(bǔ)充:

前置任務(wù):

在130.201服務(wù)器上面部署Maxwell修正版服務(wù)

基于測(cè)試環(huán)境完成Maxwell的接入測(cè)試,producer為stdout

后續(xù)的開發(fā)可以參考如下的實(shí)現(xiàn)點(diǎn):

① 完成Maxwell模板化配置

② 可以配置模板生成定制化配置,封裝統(tǒng)一的啟停腳本

③ Maxwell自動(dòng)尋址邏輯,同一個(gè)實(shí)例只能復(fù)用一個(gè)Maxwell進(jìn)程服務(wù)

④ Client_id生成邏輯

⑤ Maxwell code生成邏輯

⑥ 基于運(yùn)維系統(tǒng)封裝DTS側(cè)的接口,實(shí)現(xiàn)防火墻開通管理和新建復(fù)制用戶功能,新建用戶在Master,權(quán)限開通在Master和Slave端

⑦ 對(duì)于stdout和Kafka配置,實(shí)現(xiàn)互斥邏輯

2.2. 配置管理

配置管理包含maxwell基礎(chǔ)的配置文件,如config配置,日志配置和監(jiān)控配置。目錄規(guī)劃設(shè)計(jì)如下:

 

可以在這個(gè)基礎(chǔ)上進(jìn)行服務(wù)的相應(yīng)擴(kuò)展。

Maxwell的基礎(chǔ)配置依賴于client_id

ü client_id元數(shù)據(jù)命名

dts_[idc]_[maxwell_ip]_[maxwell_code]

如Maxwell部署在服務(wù)器 121.240,

Maxwell001為業(yè)務(wù)編碼,可以映射到相應(yīng)的數(shù)據(jù)庫(kù)服務(wù)(如Slave),為了方便標(biāo)識(shí)和 解析,不允許包含特殊符號(hào),如下劃線等

命名示例則為:dts_xxxx_121_240_maxwell001

對(duì)于實(shí)現(xiàn)細(xì)節(jié)可以整理為如下的部分:

1)支持根據(jù)模板配置化生成相應(yīng)的maxwell配置文件,配置文件命名以client_id元數(shù)據(jù)命名,格式為:dts_[idc]_[maxwell_ip]_[maxwell_code].properties,配置文件部署在app_config目錄下。

如Maxwell部署在服務(wù)器 130.200,

Maxwell001為業(yè)務(wù)編碼,可以映射到相應(yīng)的數(shù)據(jù)庫(kù)服務(wù)(如Slave),為了方便標(biāo)識(shí)和 解析,不允許包含特殊符號(hào),如下劃線等

命名示例則為:dts_xxxx_130_200_maxwell001.properties

2)對(duì)于Maxwell基礎(chǔ)信息的配置,因?yàn)榛赾lient_id,不便于顯示源端的關(guān)聯(lián)關(guān)系,該配置信息的管理需要統(tǒng)一在maxwell檔案庫(kù)中維護(hù)。

3)基礎(chǔ)配置信息包括源端服務(wù)信息,源服務(wù)端口,復(fù)制賬戶信息,client_id,歸屬maxwell應(yīng)用服務(wù)器,監(jiān)控端口,過濾列表,bootstrap_type(sync,async), kafka配置信息等

4)基礎(chǔ)配置管理需要實(shí)現(xiàn)本地前端

補(bǔ)充:

完成Maxwell服務(wù)列表和服務(wù)配置的平臺(tái)化管理,后端均為API實(shí)現(xiàn)

如果任務(wù)配置發(fā)生變更時(shí),服務(wù)列表和詳情列表為一對(duì)多的關(guān)系,即需要保留已有的配置文件記錄,然后將原記錄狀態(tài)置為失效,使得在出現(xiàn)異常回退的時(shí)候,該任務(wù)依然可以保證服務(wù)可用。

2.3. 同步對(duì)象列表變更

同步對(duì)象列表為數(shù)據(jù)傳輸中的重點(diǎn)管理對(duì)象,需要實(shí)現(xiàn)如下的功能:

1)對(duì)已有的maxwell服務(wù)新增表時(shí),需要在已有的maxwell服務(wù)下進(jìn)行擴(kuò)展,修改同步對(duì)象列表,列表的修改模式為追加,暫不支持修改,刪除等其他模式。

2)修改同步列表后,需要對(duì)maxwell服務(wù)進(jìn)行重新啟動(dòng),需要保證啟動(dòng)過程相對(duì)是平滑可控。

3)如同步列表刷新失敗,需要能夠快速回退,快速恢復(fù)數(shù)據(jù)傳輸服務(wù)。

4)配置文件版本管理和歸檔,對(duì)象變更前,需要對(duì)配置文件先做備份,并規(guī)范備份文件命名。

補(bǔ)充:

主要實(shí)現(xiàn)同步對(duì)象的修改和管理,添加相應(yīng)的正則配置,調(diào)用明細(xì)管理的方法/接口

2.4. 服務(wù)管理

能夠?qū)崿F(xiàn)maxwell的啟停管理功能,包含三個(gè)子選項(xiàng);start,stop,restart

通過API模式進(jìn)行服務(wù)狀態(tài)檢查,目前可以復(fù)用已有的開放接口

2.5. 服務(wù)自啟動(dòng)

在傳輸鏈路中,如果因?yàn)樵炊朔?wù)異常,maxwell側(cè)異常或者后端傳輸服務(wù)異常,會(huì)導(dǎo)致Maxwell服務(wù)異常終止,需要通過探測(cè)的模式進(jìn)行檢查復(fù)核,確認(rèn)后重新拉起服務(wù),保證maxwell服務(wù)的持續(xù)性。

補(bǔ)充:

開發(fā)相應(yīng)的腳本,能夠進(jìn)行服務(wù)狀態(tài)檢測(cè),并復(fù)用已有監(jiān)控的API進(jìn)行數(shù)據(jù)傳輸狀態(tài)的檢測(cè)。

3.6. 監(jiān)控報(bào)警

監(jiān)控報(bào)警為maxwell基礎(chǔ)保障功能,需要完成對(duì)Maxwell服務(wù)的數(shù)據(jù)傳輸監(jiān)控,解析binlog的吞吐量,下推Kafka的吞吐量等,并對(duì)數(shù)據(jù)傳輸異常,服務(wù)異常等異常場(chǎng)景進(jìn)行報(bào)警提示。

補(bǔ)充:

配置相應(yīng)的報(bào)警明細(xì)項(xiàng)目,設(shè)定閾值,進(jìn)行報(bào)警配置

本文轉(zhuǎn)載自微信公眾號(hào)「楊建榮的學(xué)習(xí)筆記」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系楊建榮的學(xué)習(xí)筆記公眾號(hào)。

 

責(zé)任編輯:武曉燕 來(lái)源: 楊建榮的學(xué)習(xí)筆記
相關(guān)推薦

2021-12-14 11:01:44

TCPUDP網(wǎng)絡(luò)協(xié)議

2020-06-12 07:50:15

大數(shù)據(jù)

2017-05-04 12:48:18

WOT網(wǎng)易NDC

2024-08-05 09:31:00

MySQLDTS數(shù)據(jù)

2009-05-26 11:24:00

2013-11-26 15:51:45

Android編程藍(lán)牙數(shù)據(jù)傳輸

2010-04-07 14:54:38

2019-05-29 09:38:44

MySQL字符編碼數(shù)據(jù)庫(kù)

2018-03-02 10:51:56

緩存服務(wù)器數(shù)據(jù)

2021-10-08 08:37:38

數(shù)據(jù)傳輸數(shù)據(jù)調(diào)用網(wǎng)絡(luò)協(xié)議

2017-05-05 10:35:57

WOT網(wǎng)易NDC

2010-07-13 15:55:12

FTP數(shù)據(jù)傳輸模式

2015-10-14 09:44:55

TCP網(wǎng)絡(luò)協(xié)議數(shù)據(jù)傳輸

2023-04-12 16:20:00

同步數(shù)據(jù)異步數(shù)據(jù)傳輸

2011-03-04 13:22:10

FileZilla

2009-04-10 23:40:06

2009-05-19 17:05:10

2010-06-30 15:06:27

FTP數(shù)據(jù)傳輸模式

2009-12-08 11:17:41

WCF雙向通信

2009-07-07 16:46:33

數(shù)據(jù)傳輸銅纜結(jié)構(gòu)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美三级电影在线播放 | 99tv| 亚洲一区二区中文字幕 | 精品视频999 | 一区二区三区日韩 | 国产 日韩 欧美 中文 在线播放 | 一区二区三区四区在线视频 | 亚洲一区二区三区视频 | 国产精品成av人在线视午夜片 | 国产伦一区二区三区 | 久久久91精品国产一区二区三区 | 999久久久 | 欧美色综合 | 久久精品中文 | 成人在线视频看看 | 国产欧美在线观看 | 欧美a免费 | 99国产精品久久久 | 草草影院ccyy | 91精品久久久久久久久中文字幕 | 福利一区视频 | 色毛片 | 综合久久av| 91视频在线 | 久久综合九色综合欧美狠狠 | 成人精品| 日韩在线观看 | 久久国产精品视频免费看 | 精品在线一区二区三区 | 久久这里只有精品首页 | 国产精品日韩欧美一区二区三区 | 91精品国产91久久综合桃花 | 韩日在线观看视频 | 欧美最猛黑人 | 精品成人在线 | 超碰在线免费公开 | 国产精品国产精品国产专区不卡 | www.99热这里只有精品 | 亚洲成在线观看 | 亚洲精品一区二区三区四区高清 | 黄色在线免费观看视频 |