# StarRocks数据库同步
本示例主要演示从StarRocks读取数据,写入StarRocks库中。
主要步骤如下:
# 准备数据
1、在StarRocks数据库中创建源表和目标表。
⚠️提示:StarRocks Sink 在执行中不会自动创建表,需要用户提前创建目标表。
源表:
CREATE TABLE `Employees` (
`EmployeeID` int(11) NOT NULL COMMENT "",
`Name` varchar(50) NOT NULL COMMENT "",
`Salary` decimal64(10, 2) NULL COMMENT ""
) ENGINE=OLAP
PRIMARY KEY(`EmployeeID`, `Name`)
DISTRIBUTED BY HASH(`EmployeeID`) BUCKETS 1
PROPERTIES (
"replication_num" = "3",
"in_memory" = "false",
"storage_format" = "DEFAULT",
"enable_persistent_index" = "false",
"replicated_storage" = "true",
"compression" = "LZ4"
);
INSERT INTO test.Employees(EmployeeID, Name, Salary) VALUES(1, 'mmmm', 1234.00);
INSERT INTO test.Employees(EmployeeID, Name, Salary) VALUES(2, 'aaaamijia', 3333.00);
INSERT INTO test.Employees(EmployeeID, Name, Salary) VALUES(3, 'Robert Johnson', 5500.00);
INSERT INTO test.Employees(EmployeeID, Name, Salary) VALUES(4, 'Emily Williams', 4500.00);
INSERT INTO test.Employees(EmployeeID, Name, Salary) VALUES(5, 'aaaa,bbbb', 7000.00);
目标表:
CREATE TABLE `Employees2` (
`EmployeeID` int(11) NOT NULL COMMENT "",
`Name` varchar(50) NOT NULL COMMENT "",
`Salary` decimal64(10, 2) NULL COMMENT ""
) ENGINE=OLAP
PRIMARY KEY(`EmployeeID`, `Name`)
DISTRIBUTED BY HASH(`EmployeeID`) BUCKETS 1
PROPERTIES (
"replication_num" = "3",
"in_memory" = "false",
"storage_format" = "DEFAULT",
"enable_persistent_index" = "false",
"replicated_storage" = "true",
"compression" = "LZ4"
);
# 新建同步作业
点击数据同步上的【...】,选择弹出菜单【新建数据同步作业】,作业名称为:StarRocks同步。
# 拖拽图元
依次拖拽数据源中的StarRocks Source组件和目标中的StarRocks Sink组件,依次连线。如下图所示:
# 配置组件属性
1、双击"StarRocks Source"组件,根据下图所示步骤依次配置。
2、双击"StarRocks Sink"组件,根据下图所示步骤依次配置。
3、Ctrl+S保存该模型。
# 运行
点击【运行】按钮,可以运行已经开发完毕的场景,在日志栏可以看运行日志及运行结果。
# 查看数据
从SQL客户端中查看StarRocks目标表。
# 提交版本
当草稿运行正常后,点击【提交】按钮可以将该版本提交到作业调度,每次修改提交都会生成新的版本,可以看到提交的历史版本,并可以随意切换版本。
提交后的版本,可以在作业调度中进行"定时"调度配置。