普元数据开发平台 普元数据开发平台
产品介绍
安装部署
快速入门
操作指南
SDK开发指南
FAQ
  • 数据脱敏示例
  • 准备数据
  • 新建批量作业
  • 画布中拖拽关系型数据库输入、数据脱敏、写日志图元
  • 配置"关系型数据库输入"组件属性
  • 配置"数据脱敏"组件属性
  • 配置"写日志"组件属性
  • 通用配置
  • 运行
  • 提交版本

# 数据脱敏示例

本示例主要介绍数据脱敏组件的使用。

主要步骤如下:

  • 准备数据
  • 新建批量作业
  • 画布中拖拽关系型数据库输入、数据脱敏、写日志图元
  • 配置"关系型数据库输入"组件属性
  • 配置"数据脱敏"组件属性
  • 配置"写日志"组件属性
  • 通用配置
  • 运行
  • 提交版本

# 准备数据

创建表 userinfo_idcard作为来源表。

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for userinfo_idcard
-- ----------------------------
DROP TABLE IF EXISTS `userinfo_idcard`;
CREATE TABLE `userinfo_idcard`  (
  `usercode` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户编码',
  `username` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户姓名',
  `idcard` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '身份证号',
  `sex` varchar(2) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '性别',
  `age` int(11) NULL DEFAULT NULL COMMENT '年龄',
  `unitcode` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '所属单位',
  `deptcode` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '所属部门',
  `telephone` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系方式',
  `createtime` date NULL DEFAULT NULL COMMENT '创建时间',
  `updatetime` date NULL DEFAULT NULL COMMENT '更新时间',
  PRIMARY KEY (`usercode`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;

-- ----------------------------
-- Records of userinfo_idcard
-- ----------------------------
INSERT INTO `userinfo_idcard` VALUES ('1', '张聪', '110101199001011990', '男', 30, '普元信息', '技术部', '18091256632', '2018-12-13', '2018-12-13');
INSERT INTO `userinfo_idcard` VALUES ('10', '王林', '120103200506163498', '男', 25, '普元信息', '技术部', '15901214578', '2018-12-13', '2018-12-13');
INSERT INTO `userinfo_idcard` VALUES ('101', '张三', '110101199001013195', '男', 35, '普元', '技术部', '11112222999', '2019-01-01', '2023-03-12');
INSERT INTO `userinfo_idcard` VALUES ('2', '王强', '130302199305141517', '男', 25, '普元信息', '售后', '15389012334', '2018-12-13', '2018-12-13');
INSERT INTO `userinfo_idcard` VALUES ('3', '魏雨', '130302199305141082', '女', 26, '普元信息', '售后', '15309872351', '2018-12-13', '2018-12-13');
INSERT INTO `userinfo_idcard` VALUES ('4', '刘飞', '450421200007167799', '男', 25, '普元信息', '事业部', '15091345789', '2018-12-13', '2019-12-13');
INSERT INTO `userinfo_idcard` VALUES ('5', '许馨', '21020219820216840X', '女', 25, '普元信息', '售后', '13090012019', '2018-12-13', '2023-12-18');
INSERT INTO `userinfo_idcard` VALUES ('6', '蔡亮', '120103200506164191', '男', 24, '普元信息', '技术部', '19081234789', '2018-12-13', '2020-12-13');
INSERT INTO `userinfo_idcard` VALUES ('7', '张强', '450421200506166854', '男', 27, '普元信息', '事业部', '19087652123', '2018-12-13', '2018-12-13');
INSERT INTO `userinfo_idcard` VALUES ('8', '杨孟', '632322199403286619', '男', 30, '普元信息', '事业部', '18790123567', '2018-12-13', '2023-11-14');
INSERT INTO `userinfo_idcard` VALUES ('9', '李建国', '63232219950328707X', '男', 50, '普元信息', '技术部', '15998760132', '2018-12-13', '2018-12-13');

SET FOREIGN_KEY_CHECKS = 1;

# 新建批量作业

在【集成作业】节点下,点击【数据集成】节点上的【...】,选择弹出菜单【新建数据集成作业】。

image-20240516162955405

填写作业名称、选择作业类型"离线转换"。

image-20240516163226754

# 画布中拖拽关系型数据库输入、数据脱敏、写日志图元

分别用鼠标拖拽"关系型数据库输入"、"数据脱敏"和"写日志"图元到画布。当鼠标放置到画布中的"关系型数据库输入"图元上时四周会显示"连接桩",此时拖住鼠标将"关系型数据库输入"与"数据脱敏"连接起来。

image-20240516163513796

# 配置"关系型数据库输入"组件属性

在"关系型数据库输入"图元上右键,点击【编辑】按钮,弹出"关系型数据库输入"组件的弹窗。通过下拉框选择数据源。

image-20240516163727590

选择库/schema,点击【获取SQL查询语句】,选择一个表名后点击【确定】按钮,SQL 语句自动回填到编辑框。用户也可以自行编写 SQL 语句。

image-20240516163915446

# 配置"数据脱敏"组件属性

在"数据脱敏"图元上右键,点击【编辑】按钮,弹出"数据脱敏"组件的弹窗。

image-20240516164319885

获取字段后,配置各字段加密算法,其中REVERSIBLE_REG_REPLACE算法需要指定字符参数和替换字符。

正则替换身份证: 身份证保留前六位和后四位,中间用号加密 ,选择REVERSIBLE_REG_REPLACE 算法,字符参数填: (\d{6})\d([0-9a-zA-Z]{4}) 替换字符:$1******$2

image-20240516164927356

# 配置"写日志"组件属性

在"写日志"图元上右键,点击【编辑】按钮,弹出"写日志"组件的弹窗。

mysql2mysql

点击获取字段按钮并点击确定保存

image-20240516165026316

# 通用配置

在通用配置中可以配置任务优先级、Worker 分组、命名参数、本地参数、超时告警。

image-20240516165054419

# 运行

点击【运行】按钮,可以运行已经开发完毕的场景,在日志栏可以看运行日志及运行结果,日志中显示数据已脱敏输出。

image-20240516165323067

# 提交版本

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

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

← 联合查询/更新示例 生成记录组件-示例1 →