一尘不染

如何将mysql数据实时迁移到ElasticSearch

elasticsearch

我有一个带有几个表的mysql数据库,我想将mysql数据迁移到ElasticSearch。通过批处理作业很容易将整个数据库迁移到ES。但是我应该如何从MySQL实时更新ES。即,如果在mysql中有更新操作,那么我应该在ES中执行相同的操作。我研究了mysql
binLog,它可以反映mysql的任何更改。但是我必须将binLog解析为ES语法,我认为这确实很痛苦。谢谢!(与Solr相同)


阅读 1377

收藏
2020-06-22

共1个答案

一尘不染

有一个现有项目将您的binlog转换为并发送到Elasticsearch,您可以在以下位置进行检查:https : //github.com/siddontang/go-mysql-
elasticsearch

另一个就是这个:https :
//github.com/noplay/python-mysql-
replication。

但是请注意,无论选择哪种方法,在索引Binlog之前先创建索引和映射都是一个好习惯。这使您可以更好地控制数据。

更新:

这是关于该主题的另一篇有趣的博客文章:如何使用Logstash使Elasticsearch与关系数据库保持同步

2020-06-22