(七)Talend在tMap中配置联接

1.配置联接模型

1. 在jointMap作业中,打开tMap组件向导,双击tMap_1组件。注意:单击tMap设置按钮将显示参数列表,以配置您的输入或输出流。输入流可用的设置之一允许您将“连接模型”从默认的“左外部连接”更改为“内部连接”。

2. 要更改“连接模型”属性,请单击默认设置“ 左外部连接”,然后单击“左外部连接”旁边显示的[...]。在“选项”窗口中,单击“ 内部联接”,然后单击“ 确定”。注意:更改默认设置时,tMap设置图标上会出现一个带有数字1的红点。这表示您已更改了默认tMap设置的一个参数。

3. 关闭tMap向导并运行作业。

4. 在作业设计器中,观察到tMap组件处理了来自左侧输入的总共1659行数据。但是,输出文件中仅出现190行。这是因为内部联接仅产生190行的匹配项,从而导致其他行被拒绝。

5. 可以查看movieComplete输出文件来验证拒绝其他行。在文件中,观察所有电影都将具有导演的姓名。

2.在tMap组件中创建一个新输出,以及收集内部联接拒绝

1. 打开tMap_1组件向导,然后创建另一个名为joinRejects的输出组件。创建空白输出流。

2. 要将movieID,title,releaseYear,url和DirectorID字段添加到输出组件,请从movies组件中选择五个字段,然后将它们放在输出组件上。

3. 在joinRejects输出文件中,单击tMap设置。

4. 要更改Catch查找内部联接拒绝属性,请单击默认设置false,然后单击false旁边出现的[...]。在“选项”窗口中,单击“ true”,然后单击“ 确定”。注意:通过将Catch查找内部联接拒绝属性更改为true,可以在新输出中捕获被内部联接拒绝的所有数据行。

5. 将tFileOutputDelimited组件添加到作业设计器,并将tMap_1组件的joinRejects输出链接到tFileOutputDelimited_2。

6. 要配置输出组件,请在组件的“组件”视图中,指定输出文件的路径和名称。另外,在输出文件中包含标题行,然后运行作业。

在作业设计器中,可以观察到输入数据的1659行中,有255行出现在joinOutput输出中,而1200条被拒绝的行则收集在joinRejects输出中。

还可以查看joinRejects输出文件,并查看该联接拒绝的所有影片。这些是电影文件中没有DirectorID的电影,以及电影文件中没有DirectorID的电影。

你可能感兴趣的:((七)Talend在tMap中配置联接)