ElasticSearch 数据同步

1、同步调用

操作步骤

  1. 管理系统新增酒店数据添加到数据库
  2. 调用 ES 更新文档接口,同步数据库的数据到 ES 文档

流程图


特点:

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

2、异步消息通知

操作步骤

  1. 管理系统更新酒店数据同步到数据库
  2. 发布酒店数据变更消息
  3. 监听酒店数据变更消息
  4. 更新新的酒店信息到 ES 文档

流程图


特点:

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

3、监听 binlog

操作步骤

  1. 开启 MySQL的 binlog 功能
  2. MySQL完成增、删、改操作都会记录在 binlog 中
  3. 使用 canal 监听 MySQL的 binlog,并实时更新 ES 文档内容

流程图


特点:

  • 优点:完全解除服务间耦合
  • 缺点:开启 binlog 增加数据库负担、实现复杂度高
相关推荐
AAA修煤气灶刘哥21 小时前
ES 地理查询玩明白,产品要的 “附近的店” 再也难不倒我!(附 DSL+Java 实战)
java·后端·elasticsearch
AAA修煤气灶刘哥1 天前
ES 聚合爽到飞起!从分桶到 Java 实操,再也不用翻烂文档
后端·elasticsearch·面试
Elasticsearch1 天前
Elastic Observability 中 Discover 的跟踪,用于深入的应用洞察
elasticsearch
Elasticsearch1 天前
使用 cloud-native Elasticsearch 与 ECK 运行
elasticsearch
在未来等你1 天前
Elasticsearch面试精讲 Day 9:复合查询与过滤器优化
大数据·分布式·elasticsearch·搜索引擎·面试
boonya1 天前
Elasticsearch核心原理与面试总结
大数据·elasticsearch·面试
77qqqiqi1 天前
安装es和kibana
elasticsearch·kibana
LQ深蹲不写BUG2 天前
ElasticSearch 基础内容深度解析
大数据·elasticsearch·搜索引擎
2501_920047032 天前
git在Linux中的使用
linux·git·elasticsearch
和科比合砍81分3 天前
ES模块(ESM)、CommonJS(CJS)和UMD三种格式
大数据·elasticsearch·搜索引擎