elastic search与postgresql的数据同步

本文介绍了如何将数据库中的数据同步到Elasticsearch,重点讲解了选用PostgreSQL的Elasticsearch同步插件进行数据同步的原因和实现方法,包括multicorn插件的使用,以及通过触发器实现数据的实时同步。
摘要由CSDN通过智能技术生成

方案选择

由于是针对业务数据做全文搜索,数据存在数据库里,所以将这些数据同步到 ES ,怎么做呢,无非两种方式:一是通过 ES 的 API 进行增删改查,二是通过中间件进行数据全量、增量的同步。很明显 API 的方式比较麻烦,那就试试第二种吧。中间件的方式总共搜了三种方案:

方案1:elasticsearch-jdbc
一个 独立的第三方工具。使用很简单,写个 shell 脚本就行了:

这个工具的活跃度也很高,问题是它的版本兼容性:目前最高只兼容Elasticsearch2.3.4

elastic 官方已经把 Elasticsearch、Logstash 、Kibana 版本升级到5.x版本,现在统一是5.2.2,这和以前的2.x在插件机制上有一些差异,个人倾向于使用最新版,所以这个工具暂时放弃了。

方案2:logstash-input-jdbc
logstash 的一个jdbc 插件,ruby 写的,据说不太好装,logstash 印象里一直是做日志文件收集的,尤其我们的数据库不是常见的 mysql、oracle,而是 postgresql ,感觉趟这个坑的人不多,没信心一定能成功。

方案3 :PostgreSQL 的 ElasticSearch 同步插件
直接用 PostgreSQL 的插件,国内 PG 的大牛德哥在云栖社区贴了篇

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值