CN109739931B - 一种基于CMSP的MySQLBinlog日志解析的增量同步方法 - Google Patents
一种基于CMSP的MySQLBinlog日志解析的增量同步方法 Download PDFInfo
- Publication number
- CN109739931B CN109739931B CN201811569833.4A CN201811569833A CN109739931B CN 109739931 B CN109739931 B CN 109739931B CN 201811569833 A CN201811569833 A CN 201811569833A CN 109739931 B CN109739931 B CN 109739931B
- Authority
- CN
- China
- Prior art keywords
- data
- mysql
- log
- binary
- format
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 17
- 238000006243 chemical reaction Methods 0.000 claims abstract description 13
- 238000004891 communication Methods 0.000 claims abstract description 6
- 230000005540 biological transmission Effects 0.000 claims abstract description 3
- 230000006870 function Effects 0.000 claims description 22
- 238000013461 design Methods 0.000 claims description 6
- 230000008571 general function Effects 0.000 claims description 6
- 238000013480 data collection Methods 0.000 claims description 4
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 230000001360 synchronised effect Effects 0.000 abstract description 4
- 238000013075 data extraction Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 239000011449 brick Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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(云消息服务平台),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 (3)
1.一种基于CMSP的MySQLBinlog日志解析的增量同步方法,其特征在于,
通过解析MySQL的Binlog二进制数据,实时获取MySQL数据库中增、删、改的数据,基于云消息服务平台,解决增量数据的同步问题;通过将解析后的数据转换成通用的协议数据格式,实现异源和同源数据库之间的数据汇集问题;
主要分为三部分,分别为获取二进制日志、二进制日志解析和格式转换;
其中,
二进制日志获取是整个设计中的最基础部分,后续的解析完全依赖于日志的获取;
二进制日志解析是整个增量同步方法中的核心部分,功能是将二进制数据转换成可读性的数据;
格式转换模块将解析之后的数据,根据通用转换协议,将数据组装成通用格式;
所述二进制日志获取,是通过调用Mysql的通信协议,模拟从库向主库发送dump请求命令;主库在收到请求命令后,会主动推送变化的日志信息;
所述二进制日志解析,是由于binlog日志是以事件为基础进行记录的;在进行解析时,需要对各种事件的协议格式分别处理,对应成功能相对独立的模块;
在日志解析这部分,分为通用功能模块和专用功能模块,
其中,
通用功能模块主要是将一些公共函数组装到该模块中,最大限度达到复用的目的;
专用功能模块是功能非常独立的模块部分,对应于高内聚、低耦合的设计思想;
在日志解析部分,新增数据、变更数据和删除数据的解析功能分别对应独立的模块。
2.根据权利要求1所述的方法,其特征在于,
MySQL这部分数据是二进制格式的数据,按照MySQL的通信协议,将二进制数据转换成ASCII值的数据;这部分数据涵盖了MySQL数据库增、删、改的信息;通过对这部分数据进行格式转换,转换为一种约定的协议格式,基于云消息传输平台,实现MySQL数据增量同步到同源或异源数据库。
3.根据权利要求1所述的方法,其特征在于,
将组装后的数据放到云消息服务平台,供其他同源或者异源数据库的入库使用,从而方便实现Mysql到同源或异源数据库的增量同步。
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 CN109739931A (zh) | 2019-05-10 |
CN109739931B true 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) |
Families Citing this family (12)
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的空间数据增量更新方法 |
CN110377666B (zh) * | 2019-07-26 | 2023-03-31 | 浪潮软件股份有限公司 | 基于cmsp消息中间件进行异源数据库间数据同步的方法 |
CN110401851A (zh) * | 2019-08-28 | 2019-11-01 | 浪潮软件集团有限公司 | 一种基于cmsp的视频转码方法 |
CN110493244A (zh) * | 2019-08-28 | 2019-11-22 | 浪潮软件集团有限公司 | 一种基于cmsp的视频采集方法 |
CN110659263B (zh) * | 2019-09-24 | 2023-06-20 | 浪潮软件集团有限公司 | 一种异构数据库数据交换方法 |
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界面的方法及工具 |
CN113760836B (zh) * | 2021-01-27 | 2024-04-12 | 北京京东振世信息技术有限公司 | 一种宽表计算方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108228755A (zh) * | 2017-12-21 | 2018-06-29 | 江苏瑞中数据股份有限公司 | 基于日志解析技术的MySQL数据库到Hadoop平台的数据同步复制方法 |
CN108897895A (zh) * | 2018-07-12 | 2018-11-27 | 浪潮软件集团有限公司 | 基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103617176B (zh) * | 2013-11-04 | 2017-03-15 | 广东电子工业研究院有限公司 | 一种实现多源异构数据资源自动同步的方法 |
-
2018
- 2018-12-21 CN CN201811569833.4A patent/CN109739931B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108228755A (zh) * | 2017-12-21 | 2018-06-29 | 江苏瑞中数据股份有限公司 | 基于日志解析技术的MySQL数据库到Hadoop平台的数据同步复制方法 |
CN108897895A (zh) * | 2018-07-12 | 2018-11-27 | 浪潮软件集团有限公司 | 基于云消息服务平台实现跨网闸Mysql数据库同步的装置及方法 |
Non-Patent Citations (1)
Title |
---|
基于Web Service多源异构***增量同步的实现;庞秋奔等;《计算机应用与软件》;20180512(第05期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109739931A (zh) | 2019-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109739931B (zh) | 一种基于CMSP的MySQLBinlog日志解析的增量同步方法 | |
CN106528880B (zh) | 一种多源电力业务数据的数据结构格式的规整方法和*** | |
ATE287107T1 (de) | Ereignisverwaltungssystem für externe geräte mittels dynamischer anpassung | |
CN110958327A (zh) | 一种智能变电站远程测试***及方法 | |
CN111654488B (zh) | “三站合一”变电站及感知终端信息接入方法 | |
CN108228726B (zh) | 配电网红黑图的增量异动内容获取方法及存储介质 | |
CN114691704A (zh) | 一种基于MySQL binlog的元数据同步方法 | |
CN104361128A (zh) | 一种基于水工巡检业务的pc端与移动端数据同步方法 | |
CN210924670U (zh) | 基于bim的机电施工管理*** | |
CN104112183B (zh) | 智能变电站即插即用的智能调度模型管理***及管理方法 | |
CN110069566A (zh) | 一种单向导入***中异构数据库同步方法 | |
CN113258676A (zh) | 一种与bim模型交互集成的电力监控***及交互集成方法 | |
CN116089545B (zh) | 一种采集存储介质变更数据入数据仓库的方法 | |
CN111556108B (zh) | 基于云平台的电力大数据采集***和方法 | |
CN112699183A (zh) | 数据处理方法、***、可读存储介质及计算机设备 | |
CN108804606B (zh) | 一种电力量测类数据迁移到HBase的方法及*** | |
CN112286987B (zh) | 基于Apriori算法的电力物联异常告警压缩方法 | |
CN113904928B (zh) | 一种远动装置遥信配置快速校核***和方法 | |
ATE515157T1 (de) | System zur multimedianachricht-erzeugung und - übertragung die eine geänderte audio komponente enthält | |
CN113961638A (zh) | 一种基于数据中台的数据可视化方法及*** | |
CN114820868A (zh) | 一种配网线路智能成图的方法、装置和*** | |
CN114003774A (zh) | 一种用于智慧城市的电力大数据信息采集*** | |
CN204009903U (zh) | 一种电网海量实时数据服务平台 | |
CN116431299B (zh) | 一种CTyunOS操作***的迁移评估方法及*** | |
CN112597225B (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 | ||
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. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |