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 增加数据库负担、实现复杂度高
相关推荐
ALex_zry9 小时前
Git大型仓库推送失败问题完整解决方案
大数据·git·elasticsearch
二进制coder10 小时前
Git Fork 开发全流程教程
大数据·git·elasticsearch
Elasticsearch18 小时前
混合搜索无需头疼:使用 retrievers 简化混合搜索
elasticsearch
Elastic 中国社区官方博客19 小时前
使用 A2A 协议和 MCP 在 Elasticsearch 中创建一个 LLM agent 新闻室:第二部分
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
q***65692 天前
使用Canal将MySQL数据同步到ES(Linux)
linux·mysql·elasticsearch
周全全2 天前
基于ElasticSearch的语义检索学习-向量化数据、向量化相似度、向量化检索
大数据·学习·elasticsearch
TH_12 天前
腾讯云-(10)-宝塔面板-Docker下安装Elasticsearch
elasticsearch·docker·容器
risc1234562 天前
【Elasticsearch】AwarenessAllocationDecider 感知分片决策器的处理逻辑
elasticsearch
transitory_truth2 天前
es-api介绍
elasticsearch
q***47183 天前
使用Canal将MySQL数据同步到ES(Linux)
linux·mysql·elasticsearch