[发明专利]将MySQL数据库同步到Elasticsearch的方法在审
| 申请号: | 202010473984.0 | 申请日: | 2020-05-29 |
| 公开(公告)号: | CN111858747A | 公开(公告)日: | 2020-10-30 |
| 发明(设计)人: | 王德海 | 申请(专利权)人: | 大数金科网络技术有限公司 |
| 主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F9/54;H04L29/08 |
| 代理公司: | 北京科家知识产权代理事务所(普通合伙) 11427 | 代理人: | 宫建华 |
| 地址: | 610000 四川省成都市中国(四川)自由贸易*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | mysql 数据库 同步 elasticsearch 方法 | ||
1.将MySQL数据库同步到Elasticsearch的方法,其特征在于包括以下步骤:
a、通过Canal组件实时拉取MySQL的binary log文件;
b、Canal组件解析binary log文件;
c、Canal组件将binary log文件解析后形成的数据发送至消息队列kafka;
d、应用程序消费kafka的数据,并将数据转换成行数据row data;
e、应用程序将行数据row data写入到Elasticsearch。
2.根据权利要求1所述的将MySQL数据库同步到Elasticsearch的方法,其特征在于:所述的步骤a中,Canal组件实时拉取MySQL的binary log文件时,模拟mysql slave交互协议,将自己伪装成mysql slave,向mysqlmaster发送dump请求,mysql master收到dump请求则开始推送binary log给canal组件。
3.根据权利要求2所述的将MySQL数据库同步到Elasticsearch的方法,其特征在于:所述的步骤b中,Canal组件拉取binary log文件后,进行解析,并翻译成protobuf格式的数据,再将该数据通过CanalMessageDeserializer进行解码。
4.根据权利要求2所述的将MySQL数据库同步到Elasticsearch的方法,其特征在于:所述的步骤b中,Canal组件拉取binary log文件后,进行解析,并翻译成json格式的数据。
5.根据权利要求3或4所述的将MySQL数据库同步到Elasticsearch的方法,其特征在于:所述的步骤c中,将json格式的数据或者protobuf格式解码后的数据发送至消息队列kafka,排队等待处理。
6.根据权利要求5所述的将MySQL数据库同步到Elasticsearch的方法,其特征在于:所述的步骤d中,所述的应用程序创建多个消费者,形成消费者群消费kafka的数据。
7.根据权利要求6所述的将MySQL数据库同步到Elasticsearch的方法,其特征在于:所述的消费者群配合有群组协调器的broker发送心跳,维持消费者群的从属关系以及它们对kafka数据分区的所有权关系。
8.根据权利要求1所述的将MySQL数据库同步到Elasticsearch的方法,其特征在于:所述的Kafka通过Connect在Kafka和外部存储系统之间移动数据提供一种可靠且伸缩的方式,它为连接器插件提供了一组API和一个运行时-Connect负责运行插件以及相应的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大数金科网络技术有限公司,未经大数金科网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010473984.0/1.html,转载请声明来源钻瓜专利网。





