SeaTunnel批处理同步MySQL数据至ClickHouse

ClickHouse是一种OLAP类型的列式数据库管理系统,ClickHouse完美的实现了OLAP和列式数据库的优势,因此在大数据量的分析处理应用中ClickHouse表现很优秀。

SeaTunnel是一个分布式、高性能、易扩展、用于海量数据同步和转化的数据集成平台。用户只需要配置作业信息,就能完成数据的同步。提交作业后,源连接器负责并行读取数据并将数据发送到下游转换或直接发送到接收器,接收器将数据写入目标。

SeaTunnel任务配置及启动

本示例将MySQL的test数据库下bigtest表中的10000条数据,同步到ClickHouse数据库下default.jdbc中。

MySQL建表语句如下:

CREATE TABLE `bigtest` (

  `id` int(11) NOT NULL,

  `name` varchar(100) DEFAULT NULL,

  `quantity` int(11) DEFAULT NULL,

  PRIMARY KEY (`id`)

)

向MySQL中插入数据,格式如下:

insert into test.bigtest values(1,'banana',1);

ClickHouse建表语句如下:

CREATE TABLE default.jdbc

(

    `id` Int32,

    `name` String,

    `quantity` Int32

)

ENGINE = MergeTree

ORDER BY id

1、下载jdbc

下载MySQLjdbc并放至 '$SEATNUNNEL_HOME/plugins/jdbc/'目录下

2、编写配置文件

在'$SEATNUNNEL_HOME/config'目录下,新建配置文件mysqltock.template

配置文件内容示例如下:

env {

  execution.parallelism = 1

  job.mode = "BATCH"

}

source {

jdbc {

        url = "jdbc:mysql://localhost/test"

        driver = "com.mysql.jdbc.Driver"

        user = "root"

        password = "123456"

        query = "select * from bigtest"

    }

}

sink {

clickhouse {

    host = "localhost:8123"

    database = "default"

    table = "jdbc"

    username = "default"

    password = "123456"

  }

}

3、启动任务

在'$SEATNUNNEL_HOME'目录下,使用启动命令:

./bin/seatunnel.sh --config ./config/mysqltock.template -e local

此命令将以 local (本地模式) 运行您的SeaTunnel作业。

当任务运行完毕,会出现本次任务的汇总信息:

进入ClickHouse,select count() from jdbc查看写入情况,可以看到10000条测试数据已经写入ClickHouse。

总结

本章我们运用数据集成平台SeaTunnel实现了MySQL到ClickHouse的数据同步,使用SeaTunnel仅需要编写配置文件并下载对应的连接器即可。配置化、低代码、易维护是SeaTunnel最显著的特点。

接下来我们将介绍更多数据库到ClickHouse的数据同步流程......

相关推荐
Arbori_2621512 小时前
clickhouse 实现mysql GROUP_CONCAT() 函数
数据库·mysql·clickhouse
斯普信专业组1 天前
Nomad组件部署clickhouse-job
clickhouse·nomad
麦兜和小可的舅舅1 天前
ClickHouse Drop Table On Cluster 故障分析和原理解析
clickhouse·kafka
重生之绝世牛码3 天前
Linux软件安装 —— ClickHouse单节点安装(rpm安装、tar安装两种安装方式)
大数据·linux·运维·数据库·clickhouse·软件安装·clickhouse单节点
麦兜和小可的舅舅4 天前
Spark to ClickHouse由于DNS问题导致Stage重试的Task竞态分析和问题解决过程
clickhouse·spark
重生之绝世牛码4 天前
Linux软件安装 —— ClickHouse集群安装(集成Zookeeper)+ chproxy负载均衡
大数据·linux·数据库·clickhouse·软件安装·clickhouse集群安装·clickhouse负载均衡
无级程序员6 天前
clickhouse创建用户,登录出错的问题,code 516
linux·服务器·clickhouse
billy_gisboy6 天前
01-Windows+DockerDesktop部署ClickHouse
windows·clickhouse
billy_gisboy7 天前
02-Windows DockerDesktop部署ClickHouse,解决指定磁盘数据持久化问题与WSL2调优
windows·clickhouse
hkNaruto7 天前
【运维】低配服务器ClickHouse Docker部署故障复盘与优化配置指南
运维·服务器·clickhouse