这是 elasticsearch(ES) 的一个相当常见的情况:由于 ES 接近实时,我们希望尽可能接近实时地将它与我们的 MySQL 同步。初始表被导入索引并且工作正常,但现在我们需要跟踪插入、更新和删除新记录,这是我们有问题的地方。导入由 elasticsearch-jdbc 导入器完成。它可以有一个间隔参数来定期轮询数据,但是:
- 我们不能将负责获取新/更新行的字段添加到 db,
- 我们希望有更多的原子操作,例如 DB 插入行->ES 插入文档、DB 更新行->ES 更新文档等。
两种可能满足我们需求的选择:
欢迎其他解决方案!