Informatica 中的规范化器转换示例
什么是规范化变换?
规范化器是一种主动转换,用于将单行转换为多行,反之亦然。这是一种以更有条理的方式表示数据的智能方法。
如果一行中有多个列重复的数据,则可以将其拆分为多行。有时我们会在多个出现的列中有数据。例如
| 学生姓名 | 9 级成绩 | 10 级成绩 | 11 级成绩 | 12 级成绩 |
|---|---|---|---|---|
| 学生1 | 50 | 60 | 65 | 80 |
| 学生2 | 70 | 64 | 83 | 77 |
在这种情况下,班级分数列重复四列。使用规范化器,我们可以将它们拆分到以下数据集中。
| 学生姓名 | 增益级 | 成绩 / 分数 |
|---|---|---|
| 学生1 | 9 | 50 |
| 学生1 | 10 | 60 |
| 学生1 | 11 | 65 |
| 学生1 | 12 | 80 |
| 学生2 | 9 | 70 |
| 学生2 | 10 | 64 |
| 学生2 | 11 | 83 |
| 学生2 | 12 | 77 |
步骤1) 使用脚本创建源表“sales_source”和目标表“sales_target”并导入 Informatica的
步骤2)创建一个具有源“sales_source”和目标表“sales_target”的映射
步骤3) 从转换菜单中创建一个新的转换
- 选择规范化器作为转换
- 输入名称“nrm_sales”
- 选择创建选项
步骤4) 将创建转换,选择完成选项
步骤5) Double 点击规范化器转换,然后
- 选择规范化器选项卡
- 点击图标创建两列
- 输入列名称
- 将销售额的发生次数设置为 4,将商店名称的发生次数设置为 0
- 选择“确定”按钮
转换过程中将生成列。您将看到 4 个销售列,因为我们将出现次数设置为 4。
步骤6) 然后在 制图
- 将四个季度的四列源限定符分别链接到规范化器列。
- 将商店名称列链接到规范化器列
- 将 store_name 和 sales 列从规范化器链接到目标表
- 将 GK_sales 列从规范化器链接到目标表
保存映射并在创建会话后执行 工作流程。对于商店每个季度的销售额,规范化转换将创建单独的一行。
我们的映射输出将是这样的 -
| 商店名称 | 季 | 销售 |
|---|---|---|
| 新德里 | 1 | 150 |
| 新德里 | 2 | 240 |
| 新德里 | 3 | 455 |
| 新德里 | 4 | 100 |
| MUMBAI | 1 | 100 |
| MUMBAI | 2 | 500 |
| MUMBAI | 3 | 350 |
| MUMBAI | 4 | 340 |
源数据有重复列,即 QUARTER1、QUARTER2、QUARTER3 和 QUARTER4。借助规范化器,我们重新排列数据以适合 QUARTER 的单个列,并且对于一个源记录,在目标中创建了四个记录。
通过这种方式,您可以规范化数据并为单一数据源创建多个记录。






