ElasticSearch数据同步

文章目录

  • ElasticSearch数据同步
  • [1. 同步调用](#1. 同步调用)
  • [2. 异步通知](#2. 异步通知)
  • [3. 监听binlog](#3. 监听binlog)
  • [4. 工作中处理同步的问题](#4. 工作中处理同步的问题)

ElasticSearch数据同步

ElasticSearch中酒店数据来自于mysql数据库,因此MySQL数据发生改变时,ElasticSearch也必须跟着改变,这个就是ElasticSearch和MySQL之间的数据同步

1. 同步调用

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

2. 异步通知

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

3. 监听binlog

  • 优点:完全解除服务间耦合
  • 缺点:开启binlog增加数据库负担,实现复杂度高

4. 工作中处理同步的问题

以上3种,同步调用,异步通知,监听binlog都是增量的 。工作中有时候需要全量刷新ES索引,用过以下几种实现方式:

  • 通过Java代码从数据库写到ElasticSearch和定时任务来实现
  • 通过Kettle从数据库写到ElasticSearch来实现
  • 通过Streamsets从数据库写到ElasticSearch来实现(Streamsets也可以实现监听binlog方式)
  • 通过Apache NIFI从数据库写到ElasticSearch来实现
  • 通过ESB从数据库写到ElasticSearch来实现
相关推荐
火龙谷1 分钟前
【hadoop】Flume的相关介绍
大数据·hadoop·flume
Luck_ff08102 小时前
Elasticsearch 快速入门指南
大数据·elasticsearch·搜索引擎
天天爱吃肉82182 小时前
大数据:新能源汽车宇宙的未来曲率引擎
大数据·汽车
言之。3 小时前
Makefile 在 Go 项目中的实践
开发语言·elasticsearch·golang
IvanCodes4 小时前
九、HQL DQL七大查询子句
大数据·数据库·hive
只因只因爆4 小时前
spark数据清洗
大数据·分布式·spark
好吃的肘子6 小时前
ElasticSearch进阶
大数据·开发语言·分布式·算法·elasticsearch·kafka·jenkins
老友@6 小时前
Spring Data Elasticsearch 中 ElasticsearchOperations 构建查询条件的详解
java·后端·spring·elasticsearch·operations
Clown957 小时前
go-zero(十八)结合Elasticsearch实现高效数据检索
开发语言·elasticsearch·golang
愚者大大7 小时前
小白入门:GitHub 远程仓库使用全攻略
大数据·elasticsearch·搜索引擎