# Hive分区表数据同步示例
本示例主要演示从Hive源库中读取分区表dim_product的分区数据,将数据写入Hive目标库的分区表中。
主要步骤如下:
# 准备数据
创建数据库dws_source作为源库
CREATE DATABASE IF NOT EXISTS dws_source;
创建分区表dim_product作为源表,分区字段为“created_date”,并给源表 INSERT 一些数据。
DROP TABLE IF EXISTS dws_source.`dim_product`;
-- ---------------------------------------
-- Table structure for dim_product
-- ---------------------------------------
CREATE TABLE `dws_source`.`dim_product`(
`product_id` int COMMENT '',
`product_name` varchar(400) COMMENT '',
`category` varchar(200) COMMENT '',
`sub_category` varchar(200) COMMENT '',
`brand` varchar(200) COMMENT '',
`price` decimal(10,2) COMMENT '')
PARTITIONED BY (
`created_date` string)
;
-- ----------------------------
-- Records of dim_product
-- ----------------------------
-- 插入5条数据到2026-01-01分区示例
INSERT INTO TABLE dws_source.dim_product PARTITION (created_date='2026-01-01')
VALUES (1, 'iPhone 15 Pro', 'Electronics', 'Smartphones', 'Apple', 10999.99);
INSERT INTO TABLE dws_source.dim_product PARTITION (created_date='2026-01-01')
VALUES (2, 'MacBook Pro M3', 'Electronics', 'Laptops', 'Apple', 21999.99);
INSERT INTO TABLE dws_source.dim_product PARTITION (created_date='2026-01-01')
VALUES (3, 'AirPods Pro 3', 'Electronics', 'Audio', 'Apple', 1999.99);
INSERT INTO TABLE dws_source.dim_product PARTITION (created_date='2026-01-01')
VALUES (4, 'iPad Pro M2', 'Electronics', 'Tablets', 'Apple', 9999.99);
INSERT INTO TABLE dws_source.dim_product PARTITION (created_date='2026-01-01')
VALUES (5, 'Apple Watch Series 10', 'Electronics', 'Wearables', 'Apple', 6999.99);
-- 插入5条数据到default分区示例
INSERT INTO TABLE dws_source.dim_product PARTITION (created_date='default')
VALUES (6, 'Samsung Galaxy S24 Ultra', 'Electronics', 'Smartphones', 'Samsung', 9999.99);
INSERT INTO TABLE dws_source.dim_product PARTITION (created_date='default')
VALUES (7, 'Samsung Galaxy Tab S10 Ultra', 'Electronics', 'Tablets', 'Samsung', 8999.99);
INSERT INTO TABLE dws_source.dim_product PARTITION (created_date='default')
VALUES (8, 'Samsung Galaxy Watch 6 Pro', 'Electronics', 'Wearables', 'Samsung', 3299.99);
INSERT INTO TABLE dws_source.dim_product PARTITION (created_date='default')
VALUES (9, 'Samsung Galaxy Buds 4 Pro', 'Electronics', 'Audio', 'Samsung', 1499.99);
INSERT INTO TABLE dws_source.dim_product PARTITION (created_date='default')
VALUES (10, 'Samsung Galaxy Book 4 Ultra', 'Electronics', 'Laptops', 'Samsung', 17999.99);
# 新建同步作业
点击数据同步上的【...】,选择弹出菜单【新建数据同步作业】,作业名称为:HiveSource-HiveSink-partition。
# 拖拽图元
依次拖拽数据源中的Hive Source组件和目标中的Hive Sink组件,依次连线。如下图所示:

# 配置组件属性
1、双击"Hive Source"组件,根据下图所示步骤依次配置。

2、双击"Hive Sink"组件,根据下图所示步骤依次配置。

3、Ctrl+S保存该模型。
# 运行
点击【运行】按钮,可以运行已经开发完毕的场景,在日志栏可以看运行日志及运行结果。

# 查看数据
从SQL客户端中查看源库dws_source的分区表dim_product的数据已经同步到目标库dws_sink的dim_product分区表中。
目标表dim_product结果数据

# 提交版本
当草稿运行正常后,点击【提交】按钮可以将该版本提交到作业调度,每次修改提交都会生成新的版本,可以看到提交的历史版本,并可以随意切换版本。
提交后的版本,可以在作业调度中进行"定时"调度配置。
