适用于:SQL Server
Azure 数据工厂中的 SSIS Integration Runtime
在本课中,你将创建一个简单的提取、转换和加载 (ETL) 包。 该包从单个平面文件源中提取数据,使用两个查找转换对数据进行转换,并将转换后的数据写入示例数据库中FactCurrencyRate的事实表AdventureWorksDW2025的副本。 在本课中,你将创建新的包、添加和配置数据源和目标连接,以及处理新的控制流和数据流组件。
在创建包之前,需要了解源数据和目标数据中使用的格式。 然后,可以定义将源数据映射到目标所需的转换。
先决条件
本教程依赖于 Microsoft SQL Server Data Tools、一组示例包和一个示例数据库。
注释
本文中的代码示例使用 AdventureWorks2025 或 AdventureWorksDW2025 示例数据库,可以从 Microsoft SQL Server 示例和社区项目 主页下载该数据库。
若要安装 SQL Server Data Tools,请参阅安装适用于 Visual Studio 的 SQL Server Data Tools (SSDT)。
要下载本教程的所有课程包,请执行以下操作:
- 导航到 Integration Services 教程文件。
- 选择“下载”按钮。
-
Creating a Simple ETL Package.zip选择该文件,然后选择“下一步”。 - 下载文件后,将其内容解压缩到本地目录。
查看源数据
对于本教程,源数据是一组存储在名为SampleCurrencyData.txt的平面文件中的历史货币数据。 源数据具有以下四列:货币的平均汇率、货币键、日期键和收盘汇率。
下面是文件中源数据 SampleCurrencyData.txt 的示例:
1.00070049USD9/3/05 0:001.001201442
1.00020004USD9/4/05 0:001
1.00020004USD9/5/05 0:001.001201442
1.00020004USD9/6/05 0:001
1.00020004USD9/7/05 0:001.00070049
1.00070049USD9/8/05 0:000.99980004
1.00070049USD9/9/05 0:001.001502253
1.00070049USD9/10/05 0:000.99990001
1.00020004USD9/11/05 0:001.001101211
1.00020004USD9/12/05 0:000.99970009
在使用平面文件源数据时,需要了解平面文件连接管理器如何解释平面文件数据,这一点很重要。 如果平面文件源为 Unicode,平面文件连接管理器会将所有列 [DT_WSTR] 定义为默认列宽 50。 如果平面文件源是 ANSI 编码的,则列定义为 [DT_STR] 默认列宽 50。 可能必须更改这些默认设置,才能使字符串列类型更适用于你的数据。 需要查看目标的数据类型,然后在平面文件连接管理器中选择该类型。
查看目标数据
源数据的目标是 FactCurrencyRate 事实数据表的副本 AdventureWorksDW2025。
FactCurrencyRate事实数据表有四列,并且与两个维度表有关系,如下表所示。
| 列名称 | 数据类型 | 查找表 | 查找列 |
|---|---|---|---|
AverageRate |
漂浮 | 无 | 无 |
CurrencyKey |
int (FK) 1 | DimCurrency |
CurrencyKey (PK) 2 |
DateKey |
int (FK) 1 | DimDate |
DateKey (PK) 2 |
EndOfDayRate |
漂浮 | 无 | 无 |
1 FK:外键
2 PK:主键
源数据映射到目标
我们对源和目标数据格式的分析表明查找对于 CurrencyKey 和 DateKey 值是必需的。 执行这些查找的转换通过使用来自DimCurrency和DimDate维度表的备用键获取这些值。
| 平面文件列 | 表名称 | 列名称 | 数据类型 |
|---|---|---|---|
0 |
FactCurrencyRate |
AverageRate |
漂浮 |
1 |
DimCurrency |
CurrencyAlternateKey |
nchar(3) |
2 |
DimDate |
FullDateAlternateKey |
date |
3 |
FactCurrencyRate |
EndOfDayRate |
漂浮 |
课程任务
- 第 1-1 课:创建新的 Integration Services 项目
- 第 1-2 课:添加和配置平面文件连接管理器
- 第 1-3 课:添加和配置 OLE DB 连接管理器
- 第 1-4 课:向包添加数据流任务
- 第 1-5 课:添加和配置平面文件源
- 第 1-6 课:添加和配置查找转换
- 第 1-7 课:添加和配置 OLE DB 目标
- 第 1-8 课:批注并设置第 1 课包的格式
- 第 1-9 课:测试第 1 课包