ETL数据库查询

1.      场景描述

A公司需要将用户数据和消费数据关联为宽表,并加载至目标表中,以便后续进行分析。

数据示例如下:

表-1 用户数据结构

ID

NICKNAME

PHONE

CTEATETIME

1

张三

13888888888

2014/4/8 23:36:58

2

李四

13999999999

2015/3/26 13:15:06

 

表-2 消费数据结构

ID

USERID

CREATETIME

PRICE

1

1

2016/2/8 10:36:58

100

2

2

2016/3/8 11:36:58

80

3

1

2016/4/8 12:36:58

60

4

2

2016/5/8 13:36:58

90

 

2.      场景分析

对于分布在不同数据库中的数据,可以通过数据库查询组件进行查询关联,再使用表加载组件将数据加载至目标表中。

3.      ETL任务设计

图-1 ETL任务设计图示

 

4.      示例详细步骤

  1. 第一步:配置表抽取组件。

  1. “基本信息”配置:配置进行数据抽取的数据库,以及需要抽取的数据。

图-2 “基本信息”配置

 

  1. “字段”配置:“字段”页签下展示通过SQL语句查询出来的字段。如果对SQL进行了手动调整,需要进入字段页签重新获取字段,如-3所示。

图-3 “字段”配置

 

  1. 配置完成后,单击<确定>按钮保存组件配置。

  1. 第二步:配置数据库查询组件,该组件可以使用设置的关键字在目标表中查询,并从查询结果中返回指定的字段。配置用户数据.ID为查询条件,查询用户数据.ID = 消费数据.USERID的数据,如-4

图-4 数据库查询

 

  1. 第三步:配置表加载组件。

选择数据库连接、目标表后,根据需要配置字段映射即可。