【无标题】

使用elasticsearch使用是时,有搜索功能,还有写入索引文档。实际到数据同步。
一:索引同步实时要求高的时候两种方式:
方案一:canal
1.canal模拟mysql slave的交互协议,把canal伪装成mysql slave中的一个节点,向mysql master主节点 发送dump协议

2.在mysql master主节点收到 (从节点) 的dump请求,开始推送binary log 给slave从节点(canal)

3.然后canal开始按照从节点的方式解析binary log日志,开始执行,删除,增加,修改,在从数据库中进行相应的增删改等操作。(canal 解析binary log对象 使用的是原始为byte流)

方案二:

1、当把需要的数据写入数据库的时候,也需要把数据写入索引库中。使用数据库是事务控制,同时写入成功 同时失败。

二:当索引同步实时要求不高的时候,有mq信息队列,logstash 任务调度等方式。

mq :向数据库mysql写数据的时候想mq写入消息。创建一个搜索服务程序进行监听mq,在收到消息后写入索引。优势:代码解耦。缺点:在需要处理信息可靠性的时候有一定的技术成本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值