目录

一、实验背景

1.1实验目的

1.2实验环境

1.3整体逻辑

二、实验步骤

2.1登录实验平台

2.2创建实验项目

2.3同步数据源

2.4新建转换流

2.5添加组件

2.6配置组件信息

2.6.1表输入组件配置

2.6.2记录集连接组件配置

2.6.3字段选择组件

2.6.4过滤记录组件配置

2.6.5Excel输出组件配置

2.7执行转换任务

2.8查看输出结果文件

三、实验结果

四、问题与解决

五、实验总结


一、实验背景

1.1实验目的

  1. 掌握助睿ETL软件基本操作:新建转换、添加组件、执行转换
  2. 掌握核心组件使用:表输入、记录集连接、字段选择、过滤记录、表输出
  3. 能够实现多表关联、数据过滤与分流处理

1.2实验环境

  1. 本次实验使用助睿数智(Uniplore)数据集成平台(https://www.uniplore.com/),本次实验的访问地址为https://lab.guilian.cn/。
  2. 数据库:MySQL(包含订单数据以及产品信息)。
  3. 数据准备:订单表(business_anaylsis.order_detail)、产品表(business_anaylsis.product)。

1.3整体逻辑

订单表与产品信息通过产品ID进行左外连接,移除重复的product_id字段,再按利润是否大于等于零进行过滤分流,最终分别输出盈利订单与亏损订单两个Excel文件

二、实验步骤

2.1登录实验平台

访问https://lab.guilian.cn/,登录成功后点击个人——我的学习——实训平台进入实验平台

2.2创建实验项目

进入数据集成,点击“新建项目”,任取项目名字后点击项目右上角三个小点打开项目

2.3同步数据源

首先获取本次实验的数据集:点击“元数据”,右键“关系数据库”,点击“同步数据源”

刷新后可以看到“公共数据源(Readonly)”说明同步成功

2.4新建转换流

本次实验需要创建“订单利润分流处理”转换流:右键根目录,点击“新建转换流”

输入“订单利润分流处理”并确定

创建成功后进入转换流设计页面,默认被锁住不能编辑,需要先点击开锁图标解锁

2.5添加组件

本次实验一订单数据和产品信息生成盈利订单数据和亏损订单数据:点击“组件库”,输入“表输入”查找组件

将“表输入”组件拖拽至画布中,并重复一次,此时画布里已有两个“表输入”组件

右键“表输入”组件,点击“编辑组件”

修改组件名称为“订单_详细订单”,点击“确认”

同理修改第二个“表输入”组件名称为“订单_产品信息”

使用“表输入”组件读取数据后,需要通过“记录集连接”组件将“表输入”组件的数据关联,搜索“记录集连接”组件并将其拖拽至画布中

创建两个“表输入”组件与“数据集连接”之间的连接线

连接两个表数据后会出现重复的字段“产品ID”,可以通过“字段选择”组件移除该重复字段

搜索“字段选择”组件并将其拖拽至画布中

双击该组件并命名为“移除产品ID_1字段”

创建“记录集”组件到“字段选择”组件的连接线

本次实验是通过订单的利润情况进行分流,使用“过滤记录”组件可以对记录中某个字段的值进行记录分流。

搜索“过滤记录”组件并将其拖拽至画布中:

创建“字段选择”组件到“过滤记录”组件的连接线,并在跳出的弹窗中选择“主输出步骤”,表示满足要求的记录通过该连接线传输数据。

记录经过“过滤记录”组件后会被分成两个记录流,我们可以根据业务需求将两个记录流输出到指定位置(文件、数据库表)。本次实验中选择将记录输出到Excel文件中。

搜索“excel 输出”组件,将两个表输出组件拖拽至画布中:

两个输出组件分别命名为“盈利订单”和“亏损订单”,并创建“过滤记录”组件到两个“excel输出”组件的连接线,在弹窗中分别选择“True输出”(表示满足过滤条件的记录将会由此连接线输出)和“False输出”(表示不满足过滤条件的记录将会由此连接线输出):

至此,一个完整的转换任务流程构建完毕,如下图所示:

2.6配置组件信息

2.6.1表输入组件配置

双击“订单_详细订单”组件进入配置页面,在数据库连接下拉框中选择之前导入的“线上公共数据源(Readonly)”,如图所示:

点击“获取SQL查询语句”,自动生成查询语句,并在弹窗中打开“表”目录,下滑选择其中的“business_anaylsis.order_detail”,如图所示:

可以看到系统自动填写了完整的SQL查询语句,点击“确认”:

同理修改另一个“订单_产品信息”的配置获取“business_anaylsis.product”的SQL查询语句。

2.6.2记录集连接组件配置

双击“记录集连接”组件,在下拉列表中选择需要连接的数据来源:

第一个Transform选择“订单_详细订单”,第二个Transform选择“订单_产品信息”,连接类型选择“LEFT OUTER 左外”。

随后分别点击下方的“获取连接字段”,并删除除去“product_id”与“id”的所有字段,最终完整配置如图所示:

2.6.3字段选择组件

通过“记录集”组件连接后,发现字段“product_id”与字段“id”内容相同,只需保留一个即可,于是可以使用“移除产品ID_1字段”字段选择组件,点击“移除”,并右键“字段名称区域”,然后点击“获取字段”,如图所示:

获取完所有字段后删去除“id”字段以外的字段:

2.6.4过滤记录组件配置

根据业务需求将“盈利订单”与“亏损订单”分开存储,这两个订单可以使用字段利润来区分。

双击“过滤记录组件”,在弹窗的下拉列表中分别配置判断字段——“profit”:

判断条件——“>=”:

判断值类型——“Integer”,判断值——“0”:

将匹配的结果发送到“盈利订单”输出组件,将不匹配的结果发送到“亏损订单”输出组件。

至此,过滤条件配置完毕,它将分析判断输入的利润数据,如果大于等于零就发送给“盈利订单”输出组件,反之则会发送到“亏损订单”输出组件。

2.6.5Excel输出组件配置

将接受到的结果写入到Excel表中,双击“盈利订单”excel表输出组件,在配置页面中修改文件名为“盈利订单”,选择文件拓展名为“xlsx[Excel 2007 and above]”:

随后点击“输出字段”,在空白表格处右键点击“获取字段”得到如图的所有字段:

同理配置另一个表输出组件——“亏损订单”excel组件:

2.7执行转换任务

组件配置全部完成后,点击启动按钮执行转换任务:

在弹窗中点击“启动”:

可以看到执行成功并显示执行结果与日志,如图所示:

2.8查看输出结果文件

点击“文件库”,右键根目录刷新,可以看到转换任务的输出结果:“盈利订单”和“亏损订单”,右键可以下载查看详细输出信息

打开“盈利订单”excel表,点击“筛选”,然后点击“profit”单元格旁边的下拉键,可以看到利润的排序信息,所有利润大于等于零,说明“记录过滤组”件成功将所有利润大于等于零的数据发送到“盈利订单”excel输出组件中。

打开“亏损订单”excel表,点击“筛选”,然后点击“profit”单元格旁边的下拉键,可以看到利润的排序信息,所有利润小于零,说明“记录过滤组”件成功将所有利润小于零的数据发送到“亏损订单”excel输出组件中。

三、实验结果

输出文件

内容

说明

盈利订单.xlsx

profit≥0的订单

“记录过滤组”件成功将所有利润大于等于零的数据发送到“盈利订单”excel输出组件

亏损订单.xlsx

profit≤0的订单

“记录过滤组”件成功将所有利润小于零的数据发送到“亏损订单”excel输出组件中

四、问题与解决

在实验过程中遇到了一个问题:Excel输出组件输出文件名相同,都是“file”,从而导致最终只输出了一个混杂文件“file.xlsx”。

解决方法:修改两个excel输出组件是输出文件名分别为“盈利订单”和“亏损订单”

五、实验总结

通过本次实验熟悉了助睿ETL平台的入门操作,包括创建项目、同步数据源、新建转换流、添加组件以及配置、执行转换和核对结果。了解了表输入、记录集连接、字段选择、过滤记录、Excel表输出等常用组件及其运行逻辑。

助睿平台的零代码拖拽式操作更加直观的帮助我快速领悟组件之间的逻辑关系并且便于修改调试,适合新手快速入门完成数据加工任务。

#助睿数智 #商业数据分析 #ETL数据加工 #数据实验

Logo

一站式 AI 云服务平台

更多推荐