mysql ---> es 数据同步工具
-
基本介绍一下工具
- DataX, 离线导入导出
- Sqoop, Sqoop是针对大数据而生的,专注于Hadoop(Hive)与传统的数据库数据的传递
Sqoop(发音:skup)是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql…)
间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到
Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
- Kettle
Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行, 数据抽取 高效稳定。
Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。
- 实时同步, 阿里的canal和otter
实时同步最灵活的还是用kafka做中间转发,当数据发生变化时,记录变化到kafka,需要同步数据的程序订阅消息即可,需要研发编码支持
canal
https://github.com/alibaba/canal
canal是基于mysql的binlog进行数据同步的中间件。简单来说,Canal 会将自己伪装成 MySQL 从节点(Slave),并从主节点(Master)获取 Binlog,解析和贮存后供下游消费端使用。Canal 包含两个组成部分:服务端和客户端。服务端负责连接至不同的 MySQL 实例,并为每个实例维护一个事件消息队列;客户端则可以订阅这些队列中的数据变更事件,处理并存储到数据仓库中。
使用的话,安装好canal,配置好数据库参数,再编写一个客户端消费canal传过来的数据就可以了。如何使用官网写的挺清楚了,可以直接看官网。
otter
https://github.com/alibaba/otter
otter是在canal基础上又重新实现了可配置的消费者,使用otter的话,刚才说过的消费者就不需要写了,而otter提供了一个web界面,可以自定义同步任务及map表。非常适合mysql库之间的同步。
TreeSoft
TreeSoft数据库管理系统,支持以下数据同步方案:
1、MySQL同步数据到Oracl
2、MySQL同步数据到PostgreSQL
3、MySQL同步数据到SQL Server
4、MySQL同步数据到MongoDB
5、Oracle同步数据到MySQL
6、Oracle同步数据到PostgreSQL
7、Oracle同步数据到SQL Server
8、Oracle同步数据到MongoDB
9、PostgreSQL同步数据到MySQL
10、PostgreSQL同步数据到Oracle
11、PostgreSQL同步数据到SQL Server
12、PostgreSQL同步数据到MongoDB
13、MongoDB同步数据到MySQL
14、MongoDB同步数据到Oracle
15、MongoDB同步数据到PostgreSQL
16、MongoDB同步数据到SQL Server
17、SQL Server同步数据到MongoDB
18、SQL Server同步数据到MySQL
19、SQL Server同步数据到Oracl
20、SQL Server同步数据到PostgreSQL
网友评论