使用ElasticSearch同步MySQL的插入、更新和删除操作



这是elasticsearch(ES)的一个相当常见的情况:由于ES是接近实时的,我们希望将它与MySQL尽可能接近实时地同步。最初的表被导入到索引中,它工作得很好,但是现在我们需要跟踪插入、更新和删除新记录,这是我们有问题的地方。导入由elasticsearch-jdbc importer完成。它可以有一个间隔参数来定期轮询数据,但是:

  1. 我们不能添加字段到数据库,这将负责获取新的/更新的行,
  2. 我们希望有更多的原子操作,如数据库插入行->ES插入文档,数据库更新行->ES更新文档等。

两个可能满足我们需求的选项:

  • Logstash -input-jdbc插件
  • 从LinkedIn获取MySQL数据

欢迎其他解决方案!

使用Logstash -input-jdbc插件可以同步插入和更新操作。Bug删除操作不能直接同步。我们讨论了如何使用logstash-input-jdbc同步Mysql的删除操作。在https://discuss.elastic.co/t/delete-elasticsearch-document-with-logstash-jdbc-input/47490/9 .

相关内容

  • 没有找到相关文章

最新更新