elasticSearch的数据同步:

一、数据同步思路分析:

数据同步问题分析

  1. elasticsearch中的酒店数据来自于mysql数据库,因此mysql数据发生改变时,elasticsearch也必须跟着改变,这个就是elasticsearch与mysql之间的数据同步。
  2. 在微服务中,负责酒店管理(操作mysql )的业务与负责酒店搜索(操作elasticsearch )的业务可能在两个不同的微服务上,数据同步该如何实现呢?
  3. 实现方式:
    3.1 同步调用:
    由于调用的时候是依次执行,同步调用导致性能降低,业务耦合,如果别的服务发生异常,也会影响不相关的业务;
    在这里插入图片描述
    3.2 异步调用 :
    依赖MQ,解决上面第一种方案存在的问题;
    在这里插入图片描述 3.3 监听binlog:
    完全依赖canal中间件,解除服务之间的耦合,但是增大了Mysql的压力。在这里插入图片描述

二、实现elasticsearch与数据库数据同步

在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐