(六)Talend使用tMap连接两个数据源


1.创建一个新的作业并添加一个源组件

在新的作业中,将电影元数据文件作为tFileInputDelimited组件添加到作业中。

注意,电影文件中的最后一列是DirectorID。在本教程中,使用此列将电影文件加入Directors文件中的directorID列。

2.基于名为director.txt的简单文件创建一个新的元数据文件,并将其添加为第二个源

1. 创建一个新的带分隔符的元数据文件,名为Directors。

2. 要指定示例文件,请单击“文件”字段旁边的“ 浏览”,从本地磁盘中选择文件txt,然后单击“ 打开”。

3. 此文件中的字段分隔符是逗号。要更改定界符,请在“字段分隔符”下拉列表中选择“逗号”。

4. 要刷新文件显示以反映所做的更改,请单击刷新预览。注意:此文件只有两列:DirectorID和DirectorName。

5. 将列名称更改为directorID和directorName,将directorName字段的长度更改为40。新的元数据文件director 0.1将显示在项目存储库中的“元数据”下。现在,您可以将movie文件中的directorID列与director文件中的directorID列连接在一起。

6. 将控制器元数据文件添加到作业中作为第二个源输入。

3.添加并配置tMap组件以连接两个源组件

1. 将tMap组件添加到作业设计器。

2. 要在两个组件之间建立到tMap组件的数据流,请首先将影片链接到tMap_1组件,然后将导演链接到tMap_1。

3. 要重命名源组件和tMap组件之间的链接,请两次单击该链接,然后键入movie。同样,将另一个链接重命名为Directors。

4. 要打开tMap组件向导,请双击该组件。请注意,在向导的左侧部分,电影和导演都被列为tMap组件的输入。

5. 要创建新的输出数据流,请在tMap向导的输出部分中,单击[+]将新输出命名为joinedOutput,然后单击OK。创建空白输出数据流。

6. 要将movieID,title,releaseYear和url字段添加到输出数据流,从movie输入中选择四个字段,并将它们放在输出数据流中。

同样,将directorName字段也添加到输出数据流中,从director输入中选择这个字段拖到输出数据流中。

7. 要配置联接,在movies表中选择directorID列,并将其拖到director表的directorID列中。

4.将结果存储在文件中

1. 要为输出指定目标,请在作业设计器中添加一个tFileOutputDelimited组件,然后将tMap组件的joindOutput输出链接到它。

2. 要配置输出组件,请在组件的“组件”视图中,指定输出文件的路径和名称,并在输出文件中包含标题行。

3. 要运行作业,请在“运行”视图中单击“运行”。

4. 要检查moviesComplete.csv文件,请导航至创建该文件的文件夹并打开该文件。

5. 注意:某些电影没有显示导演姓名。这些电影没有导演ID。

6. ETL工具中的默认行为:

    l  将显示行驶表中的所有行。

    l  如果不满足加入条件,则相应的输出字段将为空白。这是“左外部联接”。相反,您可以在tMap中将联接配置为内部联接,该联接仅显示满足联接条件的行。

你可能感兴趣的:((六)Talend使用tMap连接两个数据源)