淘东电商项目(43) -MQ与Logstash实现数据库同步到ES的区别

引言

本文代码已提交至Github,有兴趣的同学可以下载来看看:https://github.com/ylw-github/taodong-shop

在前面的博客,已经实现了利用Logstash自动同步数据库内容到ES,除了Logstash同步的方式,还可以使用MQ的形式来同步,他们有什么区别呢?本文来讲解下。

阅读前,有兴趣的小伙伴可以看之前写的两篇博客:

本文目录结构:
l____引言
l____ 1. MQ与Logstash同步原理对比
l____ 2. 总结

1. MQ与Logstash同步原理对比

先来看看Logstash同步数据库的内容到ES原理图:
淘东电商项目(43) -MQ与Logstash实现数据库同步到ES的区别
再来看看MQ同步数据库的内容到ES原理图:
淘东电商项目(43) -MQ与Logstash实现数据库同步到ES的区别
它们之间有什么区别呢?我做了一张表格:

区别 MQ Logstash
数据库处理 插入或更新数据立刻推送 定时从数据库获取
速度 实时推送 定时推送
复杂性 复杂 简单
最终一致性 强(有容错补偿机制)

2.总结

本文主要讲解MQ与Logstash实现数据库同步ES的区别。