数据库管理员工信息实操:ETL工具高效应用

作者:finedatalink

发布时间:2023.9.11

阅读次数:420 次浏览

1.概述

员工信息管理是公司行政管理中不可忽视的一环,随着企业数字化改革的进程,很多公司开始用数据库管理企业信息,包括员工信息管理。但有时员工信息分散在各个业务信息系统中,难以整理,这时可以考虑通过ETL工具的应用实现了数据库管理企业信息。

1.1 数据库管理企业信息应用场景

每月定期对员工销量总和进行计算,若销量总和大于 500,则筛选出销售量大于平均值的员工信息,写入优秀员工信息表,进行表扬嘉奖。

若销量总和小于 500 则筛选出销售量小于平均值的员工信息,写入需要进步员工信息表,区域负责人和对应同学进行沟通,辅助成长。

1.2 实现思路

使用参数赋值节点获取员工销量总和,并传递给参数。

使用条件分支节点判断参数值,若参数值大于等于 500,控制执行 A 下游节点,若参数值小于 500,控制执行 B 下游节点。

2.示例

2.1 整体流程

实现上述场景的 ETL 整体流程如下:

ETL工具应用,员工信息管理,数据库管理员工信息

2.2 实现步骤

2.2.1 创建数据库表

创建一个 ETL 任务,将一个「SQL脚本」节点拖到设计界面,并重命名为「创建员工销量表」。

SQL 语句的作用:数据库中新建一张员工销量统计表 slaes,主键是 id。

ETL工具应用,员工信息管理,数据库管理员工信息

SQL 建表语句如下;Copy to clipboarddrop TABLE sales;
CREATE TABLE  IF NOT EXISTS `sales` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `sales` varchar(255) DEFAULT NULL,
  `city` varchar(255) DEFAULT NULL,
  `prov` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8;
ALTER TABLE   sales AUTO_INCREMENT=1;

2.2.2 表中插入数据

再将一个「SQL脚本」节点拖到设计界面,并重命名为「为员工销量表插入数据」,用线条跟上游「创建员工销量表」节点连接起来。

SQL 语句的作用:往刚刚新建的这张表里插入一些演示用的数据。

ETL工具应用,员工信息管理,数据库管理员工信息

表结构如下图所示:

ETL工具应用,员工信息管理,数据库管理员工信息

SQL 语句如下:

Copy to clipboardINSERT INTO `sales` VALUES (null, '张飞云', 45,'苏州','江苏');
INSERT INTO `sales` VALUES (null, '李亮', 50,'无锡','江苏');
INSERT INTO `sales` VALUES (null, '王大林', 70,'常州','江苏');
INSERT INTO `sales` VALUES (null, '刘再清', 30,'无锡','江苏');
INSERT INTO `sales` VALUES (null, '曹子云', 80,'苏州','江苏');
INSERT INTO `sales` VALUES (null, '张强', 60,'常州','江苏');
INSERT INTO `sales` VALUES (null, '王小明', 40,'无锡','江苏');
INSERT INTO `sales` VALUES (null, '陈俊', 100,'常州','江苏');
INSERT INTO `sales` VALUES (null, '周旭', 50,'南京','江苏');
INSERT INTO `sales` VALUES (null, '柳一', 75,'南京','江苏');

2.2.3 获取总销售量

1)将一个「参数赋值」节点拖到设计界面,并重命名为「获取所有员工的销量总和」,用线条跟上游「为员工销量表插入数据」节点连接起来。

设置节点的数据来源,SQL 语句的作用:对 sales 表中所有的销售量进行求和得到总销售量。

ETL工具应用,员工信息管理,数据库管理员工信息

SQL 语句如下:Copy to clipboardselect sum(sales) as sales from sales

2)将获取到的总销售量输出为参数,如下图所示:

ETL工具应用,员工信息管理,数据库管理员工信息

2.2.4 优秀员工入库

1)将一个「数据同步」节点拖到设计界面,并重命名为「销量大于平均值的员工信息入库」。节点后面要跟条件分支连接的,此处先不连线。

设置节点的数据来源,SQL 语句的作用:筛选出 sales 表中销售量大于平均值的员工数据。

ETL工具应用,员工信息管理,数据库管理员工信息

SQL 语句如下:Copy to clipboardSELECT
sales.* 
FROM
( SELECT prov, avg( sales ) AS avg_sales FROM sales GROUP BY prov ) avg
LEFT JOIN sales ON avg.prov = sales.prov 
WHERE
sales.sales >= avg.avg_sales

2)将销售量大于平均值的员工数据保存到 good_user 表中。字段映射用默认的即可无需改动。

ETL工具应用,员工信息管理,数据库管理员工信息

2.2.5 待进步员工入库

1)将一个「数据同步」节点拖到设计界面,并重命名为「销量小于平均值的员工信息入库」。节点后面要跟条件分支连接的,此处先不连线。

设置节点的数据来源,SQL 语句的作用:筛选出 sales 表中销售量小于平均值的员工数据。

ETL工具应用,员工信息管理,数据库管理员工信息

SQL 语句如下:Copy to clipboardSELECT
sales.* 
FROM
( SELECT prov, avg( sales ) AS avg_sales FROM sales GROUP BY prov ) avg
LEFT JOIN sales ON avg.prov = sales.prov 
WHERE
sales.sales < avg.avg_sales

2)将销售量小于平均值的员工数据保存到 remind_user 表中。字段映射用默认的即可无需改动。

ETL工具应用,员工信息管理,数据库管理员工信息

2.2.6 设置条件判断

1)将一个「条件分支」节点拖到设计界面,并重命名为「判断销量总和是否大于500」。

用线条连接上游「获取所有员工的销量总和」节点,再用线条连接下游「销量大于平均值的员工信息入库」和「销量小于平均值的员工信息入库」节点。

此时点击条件分支节点,可以看到流转到下游的两个分支,可以给这两个分支设置判断条件,决定任务运行时执行下游哪个节点。

ETL工具应用,员工信息管理,数据库管理员工信息

2)点击操作对两个分支的条件进行设置,如下图所示:

ETL工具应用,员工信息管理,数据库管理员工信息

2.3 运行任务

因为销量总和 sales 参数值是 600,所以执行「销量大于平均值的员工信息入库」分支,而「销量小于平均值的员工信息入库」分支被跳过。

ETL工具应用,员工信息管理,数据库管理员工信息

以上案例通过ETL工具的应用实现了企业数据治理中的员工信息管理业务。在实际业务中,除了员工信息管理,ETL工具的应用可以涉及数据管理的方方面面,带来更高效的工作方式。

在数字化时代下,大数据治理对企业数据建设的重要性不言而喻,然而实现的困难有时也让人望而却步,因此选择合适的技术和工具会达到事半功倍的效果。帆软FineDataLink——中国领先的低代码/高时效数据集成产品,能过为企业提供一站式的数据服务,通过快速连接、高时效融合多种数据,提供低代码Data API敏捷发布平台,帮助企业解决数据孤岛难题,有效提升企业数据价值。

ETL工具应用,员工信息管理,数据库管理员工信息

数据集成平台产品更多介绍:www.finedatalink.com

                         

上一篇: 下一篇: