普元数据开发平台 普元数据开发平台
产品介绍
安装部署
快速入门
操作指南
应用集成
运维指南
  • Hive分区表数据同步示例
  • 准备数据
  • 新建同步作业
  • 拖拽图元
  • 配置组件属性
  • 运行
  • 查看数据
  • 提交版本

# 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组件,依次连线。如下图所示:

hive

# 配置组件属性

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

hive

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

hive

3、Ctrl+S保存该模型。

# 运行

点击【运行】按钮,可以运行已经开发完毕的场景,在日志栏可以看运行日志及运行结果。

hive

# 查看数据

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

目标表dim_product结果数据

hive

# 提交版本

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

提交后的版本,可以在作业调度中进行"定时"调度配置。

hive

← Hive读取数据示例 关系型数据库同步Hive数据示例 →