页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

ETL的主要应用场景是将多来源的异构数据,进行处理后得到具备完整性、一致性的数据模型,在这个过程中,最重要是数据模型的设计以及工程实施的方法论,ETL工具起辅助作用,用以提高实施效率、保障工程实施的规范化、辅助运维管理。

需求场景

数据来源有三个,需求进行数据处理后输出一张落地表

1、本地Excel上传,需要进行数值处理

2、虚拟表,不需要落地,用于中间表

3、数据库表

实现方案

操作流程

 

数据基础

在本地数据源中,将Excel文件中的数据导入到数据库中,数据预览如下:想要将三个数据来源的表进行关联并处理表中的一些数据,处理完成后将数据输出到一张新的表中。

1、三个数据来源的表:

  • 第一张表为本地Excel导入新增的表;
  • 第二张表为通过SQL脚本构建供应商信息数据的表;
  • 第三张表为Northwind数据源下的供应商表。

2、处理的数据:

  • 去除点产品名称字段的空值。
  • 去除销售额字段的小数位。
  • 需要一个字段同时包含了产品大类名称和产品名称。

实现方案

数据基础

在本地数据源中,将Excel文件中的数据导入到数据库中,详情请参考 文件,数据预览如下:

操作步骤

1、在系统主界面的快捷菜单中选择 数据准备 > 自助ETL,进入“自助ETL”管理界面:

2、在“自助ETL”管理界面中,选择 新建自助ETL 按钮。 按钮,进入“新建ETL”定制界面。

3、进入ETL工作流定制界面,可设计定制ETL工作流。

Image Removed

5、

 

 

 

 

 

如图所示,通过以上步骤,将3个数据来源的表进行关联处理,最终输出数据到一张新的表中。

第一个数据来源节点:本地Excel导入新增的表

第二个数据来源节点:通过SQL脚本构建供应商信息数据

第三个数据来源节点:Northwind数据源下的供应商表

Image Removed

打开数据源的位置,查看新增的表。

Image Removed

 

 

 

 

 

 

 

 

 

 

 

 3、可在此界面设计定制ETL工作流。

Image Added

数据源

1、将关系数据源节点拖入画布区。在节点配置区设置关系数据源的参数,选择刚才导入的Excel表的关系数据源、SCHEMA、表名

Image Added

2、在关系数据源上右键选择 执行到此处 ,运行当前节点。

Image Added

3、点击查看输出,可查看表的数据。

Image Added

4、产品销售数据表的数据如下:

Image Added

将表的数据导入当前工作流完成,下面对数据进行 数据预处理 

数据预处理

1、去除点产品名称字段的空值。

1)将空值处理拖节点入画布区,连接两个节点。在节点配置区选择 选择列 按钮。

Image Added

2)勾选产品名称字段,点击 到右边 按钮,将产品名称移到右边,然后点击 确定 按钮。

Image Added

3)在空值处理下拉框中选择 过滤整行

Image Added

4)在空值处理节点上右键,选择 执行到此处

2、去除销售额字段的小数位,新建一个字段同时包含了产品大类名称和产品名称。

1)将派生列节点拖入画布区,连接两个节点。在节点配置区选择 派生列配置 按钮。

Image Added

2)函数选择“四舍五入”函数,字段选择“销售额”字段,分别拖入添加/编辑表达式区。

Image Added

3)输入派生列名为“销售额取整”,点击 确定 按钮,添加一条派生列,销售额的设置完成。

Image Added

4)同理,再添加一条派生列“产品”,点击 确定 按钮。

Image Added

5)在空值处理节点上右键,选择 执行到此处 。处理完成的数据如图:

Image Added

3、在自定义模块中选择“SQL脚本”节点。

Image Added

在SQL脚本中,写对应的SQL语句,静态输入供应商信息。

Image Added

SQL语句如下:

代码块
select * from (
SELECT 1 AS SupplierID,'佳佳乐' AS Suppliername
UNION ALL
SELECT 2 AS SupplierID,'康富食品' AS Suppliername
UNION ALL
SELECT 3 AS SupplierID,'妙生' AS Suppliername
UNION ALL
SELECT 4 AS SupplierID,'为全' AS Suppliername
UNION ALL
SELECT 5 AS SupplierID,'日正' AS Suppliername
UNION ALL
SELECT 6 AS SupplierID,'德昌' AS Suppliername
UNION ALL
SELECT 7 AS SupplierID,'正一' AS Suppliername
UNION ALL
SELECT 8 AS SupplierID,'康堡' AS Suppliername
UNION ALL
SELECT 9 AS SupplierID,'菊花' AS Suppliername
UNION ALL
SELECT 10 AS SupplierID,'金美' AS Suppliername
UNION ALL
SELECT 11 AS SupplierID,'小当' AS Suppliername
UNION ALL
SELECT 12 AS SupplierID,'义美' AS Suppliername
UNION ALL
SELECT 13 AS SupplierID,'东海' AS Suppliername
UNION ALL
SELECT 14 AS SupplierID,'福满多' AS Suppliername
UNION ALL
SELECT 15 AS SupplierID,'德级' AS Suppliername
 
) Suppliers

4、将两张表表合并起来,

1)选择JOIN节点,拖入画布区。

Image Added

2)左表关联字段

Image Added

3)右表关联字段

Image Added

4)连接类型选择内连接,关联条件通过顾客编号关联两张表。

Image Added

5、将关系数据源northwindETL的顾客表导入流程中。

Image Added

6、连接类型为内连接,关联条件通过顾客编码关联两张表。

Image Added

7、表的前面增加序列号。将增加序列号节点拖入画布区,命名为“序号”。

Image Added

数据预处理完成。

目标源

将处理好的数据,输出为新的一张表。

1、将关系目标源家待拖入画布区,选择输出表的数据源、SCHEMA,并选择 新建表 按钮。

Image Added

2、新的表命名为“产品销售数据表”,点击 创建表 按钮。

Image Added

3、点击 运行按钮,创建一张新的表。

Image Added

如图,流程运行完成。

Image Added

在关系目标源上右键,选择 执行到此处 ,可查看数据处理后的表。

Image Added

打开数据源的位置,查看新增的表。

Image Added

预览表中数据如图:

Image Added

面板
borderColor#BBBBBB
bgColor#F0F0F0
borderWidth1
borderStylesolid

目录