es数据同步(仅供自己参考)

数据同步的问题分析:

当MySQL进行增删改查的时候,数据库的数据有所改变,这个时候需要修改es中的索引库的值,这个时候就涉及到了数据同步的问题

解决方法:

1、同步方法:

当服务对MySQL进行增删改的时候,这个时候使用fegin远程调用,将所更改的数据发送到es的服务上,使得es数据得到及时的更新

优点:简单、粗暴

缺点:服务之间耦合度高,MySQL服务响应慢,必须等待es更改完成。

2、异步方法:

使用消息中间件rabbitMQ,服务进行增删改的时候将信息放到MQ,es的服务去MQ中拿到信息,去更新自己的数据

优点:耦合度低,实现难度一般

缺点:依赖MQ的可靠性

3、使用binlog

MySQL在进行增删改的时候会将操作记录到binlog上,然后在使用canal(通道)中间件,通知es发生改变,这样就会使得es数据得到更新

优点:完全接触服务之间的耦合

缺点:开启binlog增加数据库负担,实现复杂度高。

相关推荐
Elasticsearch2 天前
Kibana 中的 SNMP 拓扑数据:从采集到 Canvas
elasticsearch
大大大大晴天2 天前
Hudi技术内幕:RecordPayload到RecordMerger
大数据
SelectDB3 天前
秒级弹性、最高降本 70%:SelectDB Serverless 如何重塑云数仓资源效率
大数据·后端·云原生
WhoAmI3 天前
MapReduce框架原理解析一:InputFormat
大数据·hadoop
WhoAmI3 天前
MapReduce框架原理解析三:OutputFormat
大数据·hadoop
WhoAmI3 天前
MapReduce框架原理解析二:Shuffle
大数据·hadoop
大大大大晴天4 天前
Hudi技术内幕:Key Generation原理与实践
大数据
Elasticsearch4 天前
3个信号、2个环境变量、0个采集器:使用 Python 和 Elastic 的托管 OTLP 端点实现 OpenTelemetry
elasticsearch
Elasticsearch6 天前
如何通过 Claude Code 来写入 CSV 数据到 Elasticsearch
elasticsearch