CN109739931A - 一种基于CMSP的MySQLBinlog日志解析的增量同步方法 - Google Patents

一种基于CMSP的MySQLBinlog日志解析的增量同步方法 Download PDF

Info

Publication number
CN109739931A
CN109739931A CN201811569833.4A CN201811569833A CN109739931A CN 109739931 A CN109739931 A CN 109739931A CN 201811569833 A CN201811569833 A CN 201811569833A CN 109739931 A CN109739931 A CN 109739931A
Authority
CN
China
Prior art keywords
data
mysql
log
parsing
binary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811569833.4A
Other languages
English (en)
Other versions
CN109739931B (zh
Inventor
李钦格
李朝铭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Software Co Ltd
Original Assignee
Inspur Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Software Co Ltd filed Critical Inspur Software Co Ltd
Priority to CN201811569833.4A priority Critical patent/CN109739931B/zh
Publication of CN109739931A publication Critical patent/CN109739931A/zh
Application granted granted Critical
Publication of CN109739931B publication Critical patent/CN109739931B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于CMSP的MySQLBinlog日志解析的增量同步方法,属于结构化数据抽取技术领域,本发明通过解析MySQL Binlog日志获取增量数据。MySQL这部分数据是二进制格式的数据,按照MySQL的通信协议,将二进制数据转换成ASCII值的数据。这部分数据涵盖了MySQL数据库增、删、改的信息。通过对这部分数据进行格式转换,转换为一种约定的协议格式,基于高效、稳定、安全的云消息传输平台,可以实现MySQL数据增量同步到MySQL、DB2、Oracle等同源或异源数据库。

Description

一种基于CMSP的MySQLBinlog日志解析的增量同步方法
技术领域
本发明涉及结构化数据抽取技术,尤其涉及一种基于CMSP的MySQLBinlog日志解析的增量同步方法。
背景技术
随着科技进步和信息技术的不断发展,数据在人们生活中扮演着越来越重要的角色。大数据这一概念被越来越多的人提及和重视,各类数据的汇集、加工和分析也显得越来越重要。智慧城市和健康医疗是当下科技前沿的先锋代表,但其依赖的基础依然是浩瀚有序的各种数据。因此如何实时高效获取准确的数据变得尤为重要,各种同源和异源数据库之间的数据汇聚逐步被提上日程。
发明内容
为了解决以上技术问题,本发明提出了一种基于CMSP的MySQLBinlog日志解析的增量同步方法,基于高效、可靠、稳定的CMSP(云消息服务平台),MySQL Binlog的增量同步技术可以准实时的将MySQL数据库中增、删、改的各类数据同步到同源或者异源数据库中,从而实现数据汇聚的目的。。
本发明的技术方案是:
一种基于CMSP实现MySQL Binlog日志解析的增量同步方法,通过解析MySQL的Binlog二进制数据,可以准实时获取MySQL数据库中增、删、改的数据,基于高效、可靠、稳定的云消息服务平台,解决了增量数据的同步问题。通过将解析后的数据转换成通用的协议数据格式,实现了异源和同源数据库之间的数据汇集问题。
本发明通过解析MySQL Binlog日志获取增量数据。MySQL这部分数据是二进制格式的数据,按照MySQL的通信协议,将二进制数据转换成ASCII值的数据。这部分数据涵盖了MySQL数据库增、删、改的信息。通过对这部分数据进行格式转换,转换为一种约定的协议格式,基于高效、稳定、安全的云消息传输平台,可以实现MySQL数据增量同步到MySQL、DB2、Oracle等同源或异源数据库。
进一步的包括,基于CMSP的MySQLBinlog日志解析的增量同步方法按照业务功能划分,主要分为三部分,分别为获取二进制日志、二进制日志解析和格式转换。
其中,
二进制日志获取是整个设计中的最基础部分,后续的解析完全依赖于日志的获取。
通过调用Mysql的通信协议,模拟从库向主库发送dump请求命令。主库在收到请求命令后,会主动推送变化的日志信息。
二进制日志解析是整个增量同步方法中的核心部分,功能是将二进制数据转换成可读性的数据。
由于binlog日志是以事件为基础进行记录的。在进行解析时,需要对各种事件的协议格式分别处理,对应成功能相对独立的模块。
在日志解析这部分,分为通用功能模块和专用功能模块;
通用功能模块主要是将一些公共函数组装到该模块中,最大限度达到复用的目的;
专用功能模块是功能非常独立的模块部分,对应于高内聚、低耦合的设计思想。像新增数据、变更数据和删除数据的解析功能分别对应独立的模块。
格式转换模块将解析之后的数据,根据通用转换协议,将数据组装成通用格式。
组装后的数据放到云消息服务平台,供其他同源或者异源数据库的入库使用,从而方便实现Mysql到同源或异源数据库的增量同步。
本发明的有益效果是
为了解决MySQL增量数据(增、删、改)的准实时同步、同时对源库的影响降到最低,无需在数据库源端建表,避免触发器方式实现增量带来的不利因素。同时抽取的是具体的数据,而不是增、删、改的SQL语句,摆脱了数据库类型的限制。为实现异源数据库之间的增、删、改数据同步做了很好的铺垫。
附图说明
图1是MySQL Binlog解析增量同步到同源数据库示意图;
图2是MySQL Binlog解析增量同步到异源数据库示意图。
具体实施方式
下面对本发明的内容进行更加详细的阐述:
本发明提出一种基于CMSP实现MySQL Binlog日志解析的增量同步方法,通过解析MySQL的Binlog二进制数据,可以准实时获取MySQL数据库中增、删、改的数据,基于高效、可靠、稳定的云消息服务平台,解决了增量数据的同步问题。通过将解析后的数据转换成通用的协议数据格式,实现了异源和同源数据库之间的数据汇集问题。
本次发明的主要内容描述如下所示:
1、使用Binlog解析方式,可以直接获取MySQL数据库中增、删、改的数据,通过转换成协议的标砖格式,可以实现同源或者异源数据库之间的准实时同步。避免了使用其他方式解析获取增、删、改SQL语句的不利方面。
2、基于浪潮高效、可靠、稳定的CMSP(云消息服务平台),可以将MySQL源端增、删、改的数据准实时准确送达到目的端,保证数据的完整性和一致性。
按照业务功能划分,主要分为三部分,分别为获取二进制日志、二进制日志解析和格式转换。
二进制日志获取是整个设计中的最基础部分,后续的解析完全依赖于日志的获取。通过调用Mysql的通信协议,模拟从库向主库发送dump请求命令。主库在收到请求命令后,会主动推送变化的日志信息。
二进制日志解析是整个增量同步方法中的核心部分,功能是将二进制数据转换成可读性的数据。由于binlog日志是以事件为基础进行记录的。在进行解析时,需要对各种事件的协议格式分别处理,对应成功能相对独立的模块。
在日志解析这部分,分为通用功能模块和专用功能模块,通用功能模块主要是将一些公共函数组装到该模块中,最大限度达到复用的目的。专用功能模块是功能非常独立的模块部分,对应于高内聚、低耦合的设计思想。像新增数据、变更数据和删除数据的解析功能分别对应独立的模块。
格式转换模块将解析之后的数据,根据通用转换协议,将数据组装成通用格式。组装后的数据放到云消息服务平台,供其他同源或者异源数据库的入库使用,从而方便实现Mysql到同源或异源数据库的增量同步。
本发明主要分为三个组件:增量抽取组件、格式转换组件、入库组件
安装实施如下所示:
(1)首先安装增量抽取组件、格式转换组件、入库组件、云消息服务组件
(2)配置增量抽取组件。
(3)配置格式转换组件
(4)配置入库组件
(5)配置云消息服务组件
(6)配置MySQL数据库,开启binlog日志的行模式
(7)启动各组件
测试结果:
1)MySQL增量同步到MySQL
对源表test1增、删、改各三次,三次变动的数据均能准实时同步到目的库。
2)MySQL增量同步到Oracle
对源表test1增、删、改各三次,三次变动的数据均能准实时同步到目的库。
通过解析MySQL的Binlog二进制数据,可以准实时获取MySQL数据库中增、删、改的数据,基于高效、可靠、稳定的云消息服务平台,解决了增量数据的同步问题。通过将解析后的数据转换成通用的协议数据格式,实现了异源和同源数据库之间的数据汇集问题。

Claims (8)

1.一种基于CMSP的MySQLBinlog日志解析的增量同步方法,其特征在于,
通过解析MySQL的Binlog二进制数据,实时获取MySQL数据库中增、删、改的数据,基于云消息服务平台,解决增量数据的同步问题;通过将解析后的数据转换成通用的协议数据格式,实现异源和同源数据库之间的数据汇集问题。
2.根据权利要求1所述的方法,其特征在于,
MySQL这部分数据是二进制格式的数据,按照MySQL的通信协议,将二进制数据转换成ASCII值的数据;这部分数据涵盖了MySQL数据库增、删、改的信息;通过对这部分数据进行格式转换,转换为一种约定的协议格式,基于云消息传输平台,实现MySQL数据增量同步到同源或异源数据库。
3.根据权利要求2所述的方法,其特征在于,
主要分为三部分,分别为获取二进制日志、二进制日志解析和格式转换;
其中,
二进制日志获取是整个设计中的最基础部分,后续的解析完全依赖于日志的获取;
二进制日志解析是整个增量同步方法中的核心部分,功能是将二进制数据转换成可读性的数据;
格式转换模块将解析之后的数据,根据通用转换协议,将数据组装成通用格式。
4.根据权利要求3所述的方法,其特征在于,
所述二进制日志获取,是通过调用Mysql的通信协议,模拟从库向主库发送dump请求命令;主库在收到请求命令后,会主动推送变化的日志信息。
5.根据权利要求3所述的方法,其特征在于,
所述二进制日志解析,是由于binlog日志是以事件为基础进行记录的;在进行解析时,需要对各种事件的协议格式分别处理,对应成功能相对独立的模块。
6.根据权利要求5所述的方法,其特征在于,
在日志解析这部分,分为通用功能模块和专用功能模块,
其中,
通用功能模块主要是将一些公共函数组装到该模块中,最大限度达到复用的目的;
专用功能模块是功能非常独立的模块部分,对应于高内聚、低耦合的设计思想。
7.根据权利要求3所述的方法,其特征在于,
在日志解析部分,新增数据、变更数据和删除数据的解析功能分别对应独立的模块。
8.根据权利要求3所述的方法,其特征在于,
将组装后的数据放到云消息服务平台,供其他同源或者异源数据库的入库使用,从而方便实现Mysql到同源或异源数据库的增量同步。
CN201811569833.4A 2018-12-21 2018-12-21 一种基于CMSP的MySQLBinlog日志解析的增量同步方法 Active CN109739931B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811569833.4A CN109739931B (zh) 2018-12-21 2018-12-21 一种基于CMSP的MySQLBinlog日志解析的增量同步方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811569833.4A CN109739931B (zh) 2018-12-21 2018-12-21 一种基于CMSP的MySQLBinlog日志解析的增量同步方法

Publications (2)

Publication Number Publication Date
CN109739931A true CN109739931A (zh) 2019-05-10
CN109739931B CN109739931B (zh) 2023-03-24

Family

ID=66361045

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811569833.4A Active CN109739931B (zh) 2018-12-21 2018-12-21 一种基于CMSP的MySQLBinlog日志解析的增量同步方法

Country Status (1)

Country Link
CN (1) CN109739931B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110175213A (zh) * 2019-05-27 2019-08-27 浪潮软件集团有限公司 一种基于SCN方式的Oracle数据库同步***及方法
CN110222121A (zh) * 2019-06-14 2019-09-10 浪潮软件股份有限公司 一种基于CDC方式的SQL Server数据库增量同步实现方法及***
CN110321359A (zh) * 2019-07-05 2019-10-11 浪潮软件集团有限公司 一种基于cmsp的空间数据增量更新方法
CN110377666A (zh) * 2019-07-26 2019-10-25 浪潮软件股份有限公司 基于cmsp消息中间件进行异源数据库间数据同步的方法
CN110401851A (zh) * 2019-08-28 2019-11-01 浪潮软件集团有限公司 一种基于cmsp的视频转码方法
CN110493244A (zh) * 2019-08-28 2019-11-22 浪潮软件集团有限公司 一种基于cmsp的视频采集方法
CN110659263A (zh) * 2019-09-24 2020-01-07 浪潮软件集团有限公司 一种异构数据库数据交换方法
CN110866022A (zh) * 2019-10-24 2020-03-06 贝壳技术有限公司 基于日志文件的数据解析方法、***及装置
CN110990365A (zh) * 2019-12-03 2020-04-10 北京奇艺世纪科技有限公司 一种数据同步方法、装置、服务器及存储介质
CN111159205A (zh) * 2019-11-27 2020-05-15 京东数字科技控股有限公司 一种数据处理方法及***
CN112269717A (zh) * 2020-10-30 2021-01-26 浪潮云信息技术股份公司 一种基于CMSP采集Tomcat日志并输出到Web界面的方法及工具
CN113760836A (zh) * 2021-01-27 2021-12-07 北京京东振世信息技术有限公司 一种宽表计算方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180081956A1 (en) * 2013-11-04 2018-03-22 Guangdong Electronics Industry Institute Ltd. Method for automatically synchronizing multi-source heterogeneous data resources
CN108228755A (zh) * 2017-12-21 2018-06-29 江苏瑞中数据股份有限公司 基于日志解析技术的MySQL数据库到Hadoop平台的数据同步复制方法
CN108897895A (zh) * 2018-07-12 2018-11-27 浪潮软件集团有限公司 基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180081956A1 (en) * 2013-11-04 2018-03-22 Guangdong Electronics Industry Institute Ltd. Method for automatically synchronizing multi-source heterogeneous data resources
CN108228755A (zh) * 2017-12-21 2018-06-29 江苏瑞中数据股份有限公司 基于日志解析技术的MySQL数据库到Hadoop平台的数据同步复制方法
CN108897895A (zh) * 2018-07-12 2018-11-27 浪潮软件集团有限公司 基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
庞秋奔等: "基于Web Service多源异构***增量同步的实现", 《计算机应用与软件》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110175213A (zh) * 2019-05-27 2019-08-27 浪潮软件集团有限公司 一种基于SCN方式的Oracle数据库同步***及方法
CN110222121A (zh) * 2019-06-14 2019-09-10 浪潮软件股份有限公司 一种基于CDC方式的SQL Server数据库增量同步实现方法及***
CN110321359B (zh) * 2019-07-05 2023-06-09 浪潮软件集团有限公司 一种基于cmsp的空间数据增量更新方法
CN110321359A (zh) * 2019-07-05 2019-10-11 浪潮软件集团有限公司 一种基于cmsp的空间数据增量更新方法
CN110377666A (zh) * 2019-07-26 2019-10-25 浪潮软件股份有限公司 基于cmsp消息中间件进行异源数据库间数据同步的方法
CN110401851A (zh) * 2019-08-28 2019-11-01 浪潮软件集团有限公司 一种基于cmsp的视频转码方法
CN110493244A (zh) * 2019-08-28 2019-11-22 浪潮软件集团有限公司 一种基于cmsp的视频采集方法
CN110659263A (zh) * 2019-09-24 2020-01-07 浪潮软件集团有限公司 一种异构数据库数据交换方法
CN110866022A (zh) * 2019-10-24 2020-03-06 贝壳技术有限公司 基于日志文件的数据解析方法、***及装置
CN111159205A (zh) * 2019-11-27 2020-05-15 京东数字科技控股有限公司 一种数据处理方法及***
CN110990365A (zh) * 2019-12-03 2020-04-10 北京奇艺世纪科技有限公司 一种数据同步方法、装置、服务器及存储介质
CN112269717A (zh) * 2020-10-30 2021-01-26 浪潮云信息技术股份公司 一种基于CMSP采集Tomcat日志并输出到Web界面的方法及工具
CN113760836A (zh) * 2021-01-27 2021-12-07 北京京东振世信息技术有限公司 一种宽表计算方法和装置
CN113760836B (zh) * 2021-01-27 2024-04-12 北京京东振世信息技术有限公司 一种宽表计算方法和装置

Also Published As

Publication number Publication date
CN109739931B (zh) 2023-03-24

Similar Documents

Publication Publication Date Title
CN109739931A (zh) 一种基于CMSP的MySQLBinlog日志解析的增量同步方法
CN106850788B (zh) 面向多源异构地理信息资源的集成框架及集成方法
CN110377666A (zh) 基于cmsp消息中间件进行异源数据库间数据同步的方法
CN107729366A (zh) 一种普适多源异构大规模数据同步***
CN110175213A (zh) 一种基于SCN方式的Oracle数据库同步***及方法
CN104573056A (zh) 一种基于oracle数据库大数据量在线迁移的方法
CN103825930B (zh) 一种分布式环境下的实时数据同步方法
CN104143124B (zh) 会议预定方法及项目管理***
CN108536743A (zh) 一种指控***数据库数据同步***
CN109495290B (zh) 一种运维***主子站交互方法和***
CN101997714A (zh) 时间处理方法、装置和***
CN101340448A (zh) 一种面向数字家庭的医疗数据集成方案
CN110502490A (zh) 一种MongoDB数据库数据同步***及实现方法
CN101141754A (zh) 一种增值业务分析***及其方法
CN113032379B (zh) 面向配网运检多源数据采集的方法
CN110958327A (zh) 一种智能变电站远程测试***及方法
CN108228755A (zh) 基于日志解析技术的MySQL数据库到Hadoop平台的数据同步复制方法
CN106354707A (zh) 一种省级电网节能发电调度报表动态生成***
CN104216970B (zh) 一种协同数据交换方法
CN110069566A (zh) 一种单向导入***中异构数据库同步方法
CN109561155B (zh) 一种变电站设备远程集中监视与运维方法
CN104881739A (zh) 一种基于iec61970/61968 cim标准的营配数据一致性校验方法
CN104112183B (zh) 智能变电站即插即用的智能调度模型管理***及管理方法
CN104639613B (zh) 基于改进网络协议的移动数据同步中间件的实现方法
CN110377602A (zh) 一种数据同步方法、***和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 271000 Langchao science and Technology Park, 527 Dongyue street, Tai'an City, Shandong Province

Applicant after: INSPUR SOFTWARE Co.,Ltd.

Address before: No. 1036, Shandong high tech Zone wave road, Ji'nan, Shandong

Applicant before: INSPUR SOFTWARE Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant