Talend 与 Pig 一起工作
在本章中,让我们学习如何在 Talend 中使用 Pig 作业。
创建 Talend Pig 作业
在本节中,让我们学习如何在 Talend 上运行 Pig 作业。在这里,我们将处理 NYSE 数据以找出 IBM 的平均股票量。
为此,右键单击作业设计并创建一个新作业 - pigjob。提及作业的详细信息,然后单击完成。
向 Pig Job 添加组件
要将组件添加到 Pig 作业,请将四个 Talend 组件:tPigLoad、tPigFilterRow、tPigAggregate、tPigStoreResult 从托盘拖放到设计器窗口。
然后,右键单击 tPigLoad 并为 tPigFilterRow 创建 Pig Combine 行。接下来,右键单击 tPigFilterRow 并为 tPigAggregate 创建 Pig Combine 行。右键单击 tPigAggregate 并创建 Pig 组合线到 tPigStoreResult。
配置组件和转换
在 tPigLoad 中,将发行版称为 cloudera 和 cloudera 的版本。请注意,Namenode URI 应为“hdfs://quickstart.cloudera:8020”,资源管理器应为“quickstart.cloudera:8020”。此外,用户名应为“cloudera”。
在 输入 file URI 中,将 NYSE 输入文件的路径提供给 pig 作业。请注意,此输入文件应存在于 HDFS 上。
单击编辑架构,添加列及其类型,如下所示。
在 tPigFilterRow 中,选择“使用高级过滤器”选项并将“stock_symbol = = ‘IBM’”放在过滤器选项中。
在 tAggregateRow 中,单击编辑架构并在输出中添加 avg_stock_volume 列,如下所示。
现在,将 stock_exchange 列放入 Group by 选项中。在 Operations 字段中添加 avg_stock_volume 列,其中 count 函数和 stock_exchange 作为输入列。
在 tPigStoreResult 中,在 Result Folder URI 中给出输出路径,你要在其中存储 Pig 作业的结果。选择存储函数为 PigStorage,字段分隔符(非强制)为“\t”。
执行 Pig 作业
现在单击运行以执行你的 Pig 作业。 (忽略警告)
作业完成后,请检查你提到的用于存储 Pig 作业结果的 HDFS 路径中的输出。 IBM 的平均库存量为 500。