[發(fā)明專利]一種中小企業(yè)低耦合異構(gòu)數(shù)據(jù)同步方法在審
| 申請(qǐng)?zhí)枺?/td> | 202310246844.3 | 申請(qǐng)日: | 2023-03-15 |
| 公開(kāi)(公告)號(hào): | CN116383302A | 公開(kāi)(公告)日: | 2023-07-04 |
| 發(fā)明(設(shè)計(jì))人: | 李亞運(yùn);季益亮;謝汶達(dá);陳云濤;趙音龍;陳豐生 | 申請(qǐng)(專利權(quán))人: | 海納致遠(yuǎn)數(shù)字科技(上海)有限公司 |
| 主分類號(hào): | G06F16/27 | 分類號(hào): | G06F16/27;G06F9/54 |
| 代理公司: | 上海申浩律師事務(wù)所 31280 | 代理人: | 陸葉 |
| 地址: | 200030 上海市*** | 國(guó)省代碼: | 上海;31 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 中小企業(yè) 耦合 數(shù)據(jù) 同步 方法 | ||
本發(fā)明公開(kāi)了一種中小企業(yè)低耦合異構(gòu)數(shù)據(jù)同步方法,具體步驟如下:步驟一、搭建高可用RabbitMQ作為分布式消息隊(duì)列;步驟二、搭建高可用MySQL集群和高可用MongoDB集群;步驟三、配置MySQL,開(kāi)啟binlog寫(xiě)入功能,配置binlog?format為ROW模式;步驟四、配置DataX,安裝MySQL和MongoDB插件,并修改job參數(shù),執(zhí)行離線同步任務(wù);步驟五、配置Canal,修改RabbitMQ、MySQL相關(guān)參數(shù),并啟動(dòng)Canal?server;步驟六、訂閱RabbitMQ消息,解析MySQL?binlog消息并將增量數(shù)據(jù)保存至MongoDB,實(shí)現(xiàn)近實(shí)時(shí)數(shù)據(jù)同步。
技術(shù)領(lǐng)域
本發(fā)明涉及中小企業(yè)對(duì)于異構(gòu)數(shù)據(jù)同步的需求,具體涉及一種中小企業(yè)低耦合異構(gòu)數(shù)據(jù)同步方法,能夠?qū)崿F(xiàn)分布式架構(gòu)下低耦合輕代碼實(shí)現(xiàn)異構(gòu)數(shù)據(jù)的同步。
背景技術(shù)
現(xiàn)有的數(shù)據(jù)同步方案中,主要分為工具和自研兩大類。目前較為流行的工具中Kettle(一款國(guó)外開(kāi)源的ETL工具,純Java編寫(xiě),綠色無(wú)需安裝,數(shù)據(jù)抽取高效穩(wěn)定)主要支持關(guān)系型數(shù)據(jù)庫(kù)間數(shù)據(jù)同步,對(duì)異構(gòu)數(shù)據(jù)支持較為一般,需要擴(kuò)展插件來(lái)實(shí)現(xiàn),且當(dāng)一次性拉取數(shù)據(jù)量過(guò)大時(shí)會(huì)造成OOM(OutOfMemoryError,Java程序內(nèi)存不足錯(cuò)誤)內(nèi)存溢出報(bào)錯(cuò);Sqoop(ApacheSqoop是Hadoop和關(guān)系數(shù)據(jù)庫(kù)服務(wù)器之間傳送數(shù)據(jù)的一種工具)支持關(guān)系型數(shù)據(jù)庫(kù)到HDFS(源自于Google的GFS論文發(fā)表于2003年10月HDFS是GFS克隆版,HDFS的全稱是HadoopDistributedFileSystem易于擴(kuò)展的分布式文件系統(tǒng))的數(shù)據(jù)同步,對(duì)于同步到MongoDB的支持也相對(duì)較差。公司自研有較高的開(kāi)發(fā)和測(cè)試成本,涉及到表數(shù)據(jù)量較多時(shí),需要詳細(xì)進(jìn)行測(cè)試和穩(wěn)定性驗(yàn)證,同時(shí)數(shù)據(jù)同步一般有時(shí)限要求,因此不適合中小企業(yè)使用。
發(fā)明內(nèi)容
針對(duì)上述問(wèn)題,本發(fā)明提供一種中小企業(yè)低耦合異構(gòu)數(shù)據(jù)同步方法,通過(guò)優(yōu)異可靠的DataX進(jìn)行離線數(shù)據(jù)同步,結(jié)合Canal+RabbitMQ實(shí)現(xiàn)近實(shí)時(shí)數(shù)據(jù)同步,實(shí)現(xiàn)了一套系統(tǒng)離線+近實(shí)時(shí)異構(gòu)數(shù)據(jù)同步,且高并發(fā)、高可用、高可靠、易部署、可擴(kuò)展。
名詞解釋:
1、MySQL:一個(gè)基于GNU協(xié)議的開(kāi)源關(guān)系型數(shù)據(jù)庫(kù),由于其性能高、成本低、可靠性好,已經(jīng)成為最流行的開(kāi)源數(shù)據(jù)庫(kù)。
2、MongoDB:一個(gè)由C++語(yǔ)言編寫(xiě)而成的面向文檔的開(kāi)源數(shù)據(jù)庫(kù)管理系統(tǒng)。
3、異構(gòu)數(shù)據(jù):不同結(jié)構(gòu)的數(shù)據(jù),在這里特指數(shù)據(jù)的存儲(chǔ)管理機(jī)制不同,可以是關(guān)系型數(shù)據(jù)庫(kù)(如MySQL),也可以是非關(guān)系型數(shù)據(jù)庫(kù)(如MongoDB)。
4、高可用:指的是通過(guò)盡量縮短因日常維護(hù)操作(計(jì)劃)和突發(fā)的系統(tǒng)崩潰(非計(jì)劃)所導(dǎo)致的停機(jī)時(shí)間,以提高系統(tǒng)和應(yīng)用的可用性。
5、RabbitMQ:一個(gè)由Erlang語(yǔ)言開(kāi)發(fā)并且實(shí)現(xiàn)了高級(jí)消息隊(duì)列協(xié)議(AMQP)的開(kāi)源消息隊(duì)列中間件,具有免費(fèi)、開(kāi)源、安全、高性能、持久化等優(yōu)點(diǎn)。
6、DataX:一個(gè)阿里巴巴開(kāi)源的異構(gòu)數(shù)據(jù)源離線同步工具,致力于實(shí)現(xiàn)包括關(guān)系型數(shù)據(jù)庫(kù)(MySQL、Oracle等)、HDFS、Hive、HBase、FTP、MongoDB等各種異構(gòu)數(shù)據(jù)源之間穩(wěn)定高效的數(shù)據(jù)同步功能。
7、Canal:基于MySQL數(shù)據(jù)庫(kù)增量日志(binlog)解析,提供增量數(shù)據(jù)訂閱和消費(fèi),通過(guò)偽裝成MySQLSlave(MySQL副本節(jié)點(diǎn)),接受數(shù)據(jù)變更通知,進(jìn)而將數(shù)據(jù)更新同步至目標(biāo)數(shù)據(jù)庫(kù)。
為實(shí)現(xiàn)上述技術(shù)目的,達(dá)到上述技術(shù)效果,本發(fā)明通過(guò)以下技術(shù)方案實(shí)現(xiàn):一種中小企業(yè)低耦合異構(gòu)數(shù)據(jù)同步方法,具體步驟如下:
步驟一、搭建高可用RabbitMQ作為分布式消息隊(duì)列;
步驟二、搭建高可用MySQL集群和高可用MongoDB集群;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于海納致遠(yuǎn)數(shù)字科技(上海)有限公司,未經(jīng)海納致遠(yuǎn)數(shù)字科技(上海)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202310246844.3/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 科技型中小企業(yè)科技成果產(chǎn)業(yè)化的傳媒推廣方法
- 基于云計(jì)算的中小企業(yè)供應(yīng)鏈金融平臺(tái)
- 一種中小企業(yè)網(wǎng)絡(luò)融資系統(tǒng)和方法
- 分布式金融服務(wù)基礎(chǔ)平臺(tái)
- 一種企業(yè)價(jià)值畫(huà)像評(píng)價(jià)的方法和系統(tǒng)
- 一種中小企業(yè)風(fēng)控模型
- 信用評(píng)估裝置和信用評(píng)估系統(tǒng)
- 融合司法軟信息的中小企業(yè)信用風(fēng)險(xiǎn)預(yù)測(cè)方法和系統(tǒng)
- 基于GRA的動(dòng)態(tài)中小企業(yè)信用評(píng)分方法及系統(tǒng)
- 一種中小企業(yè)信用數(shù)據(jù)挖掘方法
- 數(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)裝置





