ElasticSearch数据同步

2024-01-07 17:20:58

ElasticSearch数据同步

ElasticSearch中酒店数据来自于mysql数据库,因此MySQL数据发生改变时,ElasticSearch也必须跟着改变,这个就是ElasticSearch和MySQL之间的数据同步

在这里插入图片描述

1. 同步调用

在这里插入图片描述

  • 优点:实现简单粗暴
  • 缺点:业务耦合度高

2. 异步通知

在这里插入图片描述

  • 优点:低耦合,实现难度一般
  • 缺点:依赖MQ的可靠性

3. 监听binlog

在这里插入图片描述

  • 优点:完全解除服务间耦合
  • 缺点:开启binlog增加数据库负担,实现复杂度高

4. 工作中处理同步的问题

以上3种,同步调用,异步通知,监听binlog都是增量的。工作中有时候需要全量刷新ES索引,用过以下几种实现方式:

  • 通过Java代码从数据库写到ElasticSearch和定时任务来实现
  • 通过Kettle从数据库写到ElasticSearch来实现
  • 通过Streamsets从数据库写到ElasticSearch来实现(Streamsets也可以实现监听binlog方式)
  • 通过Apache NIFI从数据库写到ElasticSearch来实现
  • 通过ESB从数据库写到ElasticSearch来实现

文章来源:https://blog.csdn.net/stormkai/article/details/135374276
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。