es怎么同步mysql_Elasticsearch与Mysql数据同步

Elasticsearch就是专门用于搜索的,所以我们会将新增的数据放入Elasticsearch中用于搜索,就有这样的常见的场景,需要将Mysql中的数据同步到Elasticsearch中。

Mysql数据同步到ES类型

Mysql数据同步到ES中分为两种,分别是全量同步和增量同步。全量同步表示第一次建立好ES索引之后,将Mysql中所有数据一次性导入到ES中。增量同步表示Mysql中产生新的数据,这些新的数据包括三种情况,就是新插入Mysql中的数据,更新老的数据,删除的数据,这些数据的变动与新增都要同步到ES中。

Mysql与ES的数据同步实现方式

业界有一些开源方案,开源中间件来实现。

1. 基于Mysql的binlog日志订阅:binlog日志是Mysql用来记录数据实时的变化。

b61a656d674e667473dae117be0e0845.png

这里主要的是binlog同步组件,目前实现的有国内的阿里巴巴开发的canal。

1e78db54732a1ddd342fcaed362ea9e0.png

2. 使用go-mysql-elasticsearch。

0c75777f2cb99b6139917e8069926944.png

go-mysql-elasticsearch是一款使用go语言开发的同步数据到ES的工具。

go-mysql-elasticsearch也是基于Mysql的binlog订阅,也可以使用使用mysqldump的方式。

目前还不支持ES6.x及以上的版本,也不支持mysql8.x版本,同时该项目目前还不够稳定,也在开发中。

3. ES官方数据收集和同步组件logstash

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值