Talend - 使用 Pig
在本章中,让我们学习如何在 Talend 中使用 Pig 作业。
创建 Talend Pig 作业
在本节中,让我们学习如何在 Talend 上运行 Pig 作业。在这里,我们将处理 NYSE 数据以找出 IBM 的平均股票交易量。
为此,右键单击作业设计并创建一个新作业 - pigjob。提及作业的详细信息并单击完成。
向 Pig 作业添加组件
要向 Pig 作业添加组件,请将四个 Talend 组件:tPigLoad、tPigFilterRow、tPigAggregate、tPigStoreResult 从托盘拖放到设计器窗口。
然后,右键单击 tPigLoad 并创建 Pig Combine 行到 tPigFilterRow。接下来,右键单击 tPigFilterRow 并创建 Pig Combine 行到 tPigAggregate。右键单击 tPigAggregate 并创建 Pig 合并行到 tPigStoreResult。
配置组件和转换
在 tPigLoad 中,将发行版指定为 cloudera,并指定 cloudera 的版本。请注意,Namenode URI 应为"hdfs://quickstart.cloudera:8020",Resource Manager 应为"quickstart.cloudera:8020"。此外,用户名应为"cloudera"。
在输入文件 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,字段分隔符(非强制性)为" "。
执行 Pig 作业
现在单击 Run 以执行您的 Pig 作业。 (忽略警告)
作业完成后,前往您提到的用于存储 Pig 作业结果的 HDFS 路径检查输出。IBM 的平均库存量为 500。