sql同步到es之logstash

此工具是定时同步,sql查询同步。

每次同步后,记录lastModefineTime,也就是最后一次修改时间,下次同步时从该段时间开始更新。

logstash的原理是查询sql,并把数据送到es中,如果sql中的数据被删除,则不能把es中对应的数据进行删除。解决办法是,增加一个字段,比如 del =1 ? 表示删除,也就是软删除。在使用时把该字段作为查询条件即可筛选该数据。

很明显,会导致无用数据越积越多。

当然也不是没有办法,那就是定时清除 es 中 del = 1的数据,从而真正把它从es中删除掉。

logstash用作数据同步,理论上是完全可行的。

优点:简单灵活。

缺点:Logstash耗资源较大,它是定时运行,也就是每隔一段时间就执行一次同步(定时频率可以自己设定),运行占用CPU和内存高。另外没有消息队列缓存,存在数据丢失隐患

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注