关系型数据库同步数据到Elasticsearch设计方案

 时间:2024-10-19 19:10:43

1、构建canal服务订阅数据库binlog消息canal服务监听到数据库表的变化,发送消息给同步MQ

关系型数据库同步数据到Elasticsearch设计方案

3、写入es成功,发送消蝌怦吩曰息给对账程序这里我们采用延时对账的方式,保证DB中数据和ES中数据的一致性在写入es成功之后,发送延时消息(谮燥寻寒延时2s或者5s,根据测试结果而定)给对账程序,对账程序有2种对账方式,第一种是全量对账,意思就是以DB为主对比ES中的每个字段是否和DB中一致,第二种是对比表更新时间,意思就是对比DB表中该条数据的更新时间是否和ES中保存的更新时间一致。全量对账适合ES聚合了多个表的数据,且表中数据更新频繁;对比更新时间的方式适合ES索引结构简单但是字段较多对账不一致把该条MQ消息发给异常MQ队列,重新同步该条消息到ES

关系型数据库同步数据到Elasticsearch设计方案

5、手动刷新ES接口有的人会说,已经监听了binlog消息,为什么还需要手动刷新ES接口,是因为在很多时候我们需要不想要需要数据库中的任何一个字段制造消息变更,还有不想要因为刷新ES的数据而造成同步MQ队列积压,影响线上正常业务

关系型数据库同步数据到Elasticsearch设计方案
  • Delphi中类的自定义事件
  • DZ如何设置手机版
  • myelicape configuration center怎么关闭
  • 希壤怎么前往其他区域
  • 美图秀秀如何制作倒影文字?
  • 热门搜索
    卤肉饭怎么做 挂钩疼是怎么回事 苏宁任性付怎么开通 黑头怎么办 鱼刺卡在喉咙里怎么办 china怎么读 万圣节用英语怎么说 眼球出血怎么办 宝宝厌食怎么办 怎么判断肤质