⌘CtrlK
Appearance
Appearance
本示例主要介绍 Seatunnel 处理引擎下,使用关系型数据库到StarRocks全量同步进行多表数据的同步场景。
主要步骤如下:
以 MySQL 数据库为例。创建数据库:dws_source_dev,在数据库 dws_source_dev 中创建一个表 orderinfo。
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for orderinfo
-- ----------------------------
drop table if EXISTS orderinfo;
create table orderinfo
(
ordercode VARCHAR(32) not null comment '订单号',
amount int(11) comment '数量',
price VARCHAR(32) comment '价格',
manufacturer VARCHAR(32) comment '厂商',
createtime DATE comment '创建时间',
createuser VARCHAR(32) comment '创建人',
updatetime timestamp comment '更新时间'
) ENGINE=INNODB DEFAULT CHARSET=utf8;
alter table orderinfo add constraint ORDER_PRIMARYKEY primary key (ORDERCODE);
-- ----------------------------
-- Records of orderinfo
-- ----------------------------
BEGIN;
insert into orderinfo (ordercode, amount, price, manufacturer, createtime, createuser, updatetime)
values ('001', 1000, '5000', 'xingyun', '2018-12-13', 'zhangcong', '2018-12-13 00:00:00');
insert into orderinfo (ordercode, amount, price, manufacturer, createtime, createuser, updatetime)
values ('002', 500, '1000', '西安金属', '2018-12-13', '王强', '2018-12-15 00:00:00');
insert into orderinfo (ordercode, amount, price, manufacturer, createtime, createuser, updatetime)
values ('003', 1500, '7000', '枫禾林木', '2018-12-13', '魏雨', '2018-12-13 12:00:00');
insert into orderinfo (ordercode, amount, price, manufacturer, createtime, createuser, updatetime)
values ('004', 20000, '75000', '星峰', '2018-12-13', '王林', '2018-12-13 00:00:00');
insert into orderinfo (ordercode, amount, price, manufacturer, createtime, createuser, updatetime)
values ('005', 1300, '8000', '天威科技', '2018-12-13', '王林', '2019-12-01 00:00:00');
COMMIT;
SET FOREIGN_KEY_CHECKS = 1;创建StarRocks数据库:sea_demo。
CREATE DATABASE sea_demo;点击资源树节点上的【...】,选择弹出菜单【新建通用模板作业】,填写"模板名称",选择"模板类型",点击【确定】按钮。

选择来源和目标表的"数据源"、"库名称"。

⚠️ 提示:单表同步时选择一张表,多表同步时选择多张表,整库迁移时选择全部表。



默认“数据添加模式”为“同步前删除数据”;默认“大小写转换模式”为“不转换”;可根据需要修改。
在通用配置中可以配置任务优先级、Worker 分组、本地参数、失败重试、超时机制、部署方式。
如果所有组件属性都已设置完毕,点击【保存】按钮,可以看到保存过的历史草稿,并可以随意切换草稿。(草稿只保存最近 10 个)
可以参考示例关系型表数据同步示例 中的"保存草稿"说明。
点击【运行】按钮,可以运行已经开发完毕的场景,在日志栏可以看运行日志及运行结果。
上述模型中目标表必须存在,运行成功会把源表中数据全部同步。


当草稿运行正常后,点击【提交】按钮可以将该版本提交到作业调度,每次修改提交都会生成新的版本,可以看到提交的历史版本,并可以随意切换版本。
提交后的版本,可以在作业调度中进行"定时"调度配置。
可以参考示例关系型表数据同步示例 中的"提交版本"说明。