页面树结构

版本比较

标识

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


ETL的主要应用场景是将多来源的异构数据,进行处理后得到具备完整性、一致性的数据模型。在这个过程中,最重要是数据处理模型的设计以及实施,Smartbi的自助ETL功能可以提高数据质量、适应不同的数据分析方式。

目录

需求场景

自助ETL的主要应用场景是将多来源的异构数据,进行处理后得到具备完整性、一致性的数据模型。使用自助ETL可以提高数据的质量、适应不同的数据分析方法。

想要将三个数据来源的表进行关联并处理表中的一些数据,处理完成后将数据输出到一张新的表中。

1、需要关联的的表:

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

2、需要处理的数据:

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

需求场景1:数据预处理

想要对产品的销售情况进行分析,数据源中有一张产品销售表,先根据需求对数据进行处理,然后进行数据分析。

实现方案

数据基础

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

数据源中“产品销售表”的数据预览如下:

Image Removed

Image Added

操作步骤

1、在系统主界面的快捷菜单中选择 数据准备 > 自助ETL

,进入“自助ETL”管理界面:

,进入“新建ETL”定制界面。

Image Removed

Image Added

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

Image Removed

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

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

Image Modified

数据源

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

Image Removed

1、将关系数据源节点拖入画布区,在节点配置区设置关系数据源的参数。

Image Added

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

Image Removed

Image Added

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

Image Removed

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

Image Removed

3、点击查看输出,可查看关系数据源节点输出的数据,如下:

Image Added

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

数据预处理

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

需要在表中添加序号,并去除采购金额字段的小数位。

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

1、将增加序列号节点拖入画布区,连接两个节点,设置序列列名称。

Image Removed

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

Image Removed

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

Image Removed

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

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

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

Image Added

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

Image Removed

Image Added

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

Image Removed

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

Image Removed

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

Image Removed

5)在空值处理节点上右键,选择

3、将对应函数和字段分别拖入添加/编辑表达式区,点击 确定 按钮,添加一条“采购金额取整”的派生列。

Image Added

4、在派生列节点上右键,选择 执行到此处  ,运行当前节点

处理完成的数据如图:

查看派生列节点的输出数据如下:

Image Removed

自定义模块

3、使用“SQL脚本”节点构建一张含有供应商信息数据的表。

1)将“SQL脚本”节点拖入画布区,点击 SQL脚本 按钮。

Image Removed

2)在SQL脚本中窗口中,填入对应的SQL语句,静态输入供应商信息。

Image Removed

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

3)在SQL脚本上右键选择 执行到此处 ,运行当前节点。

4、将处理好的产品销售明细表和供应商信息表,通过供应商编码连接起来。

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

Image Removed

2)设置左表关联的字段如图:

Image Removed

3)设置右表关联的字段如图:

Image Removed

4)连接类型选择内连接,关联条件选择供应商ID和SupplierID。

Image Removed

5)在JOIN节点上右键选择 执行到此处 ,运行当前节点。

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

Image Removed

6、将合并的两张表与顾客表通过顾客编码连接起来。

Image Removed

7、增加序列号,序列列名称为“序号”。

Image Removed

Image Added

数据预处理完成,下面将处理好的数据输出。

目标源

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

1、将关系目标源家待拖入画布区,选择输出表的数据源、

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

Image Removed

Image Added

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

Image Removed

Image Added

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

Image Removed

Image Added

流程运行完成,如图:

流程运行完成后,关系目标源节点输出的数据如下:

Image Removed

Image Added

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

在数据源中查看刚才创建的“产品销售数据表”表,预览表中的数据如图:

Image Removed

Image Added

打开数据源的位置,可预览“产品销售数据表”表中的数据如图:

使用自助ETL处理数据完成,下面可对产品销售情况进行数据分析,详情请参考 可视化与分析数据 。

Image Removed

面板
borderColor#BBBBBB
bgColor#F0F0F0
borderWidth1
borderStylesolid
toc


需求场景二:增量抽取

详情请参考:数据挖掘-参数设置