Talend - 使用Pig



本章我們將學習如何在 Talend 中使用 Pig 作業。

建立 Talend Pig 作業

在本節中,我們將學習如何在 Talend 上執行 Pig 作業。在這裡,我們將處理 NYSE 資料以找出 IBM 的平均股票交易量。

為此,右鍵單擊“作業設計”並建立一個新作業 – pigjob。填寫作業詳細資訊,然後單擊“完成”。

Talend Pig Job

向 Pig 作業新增元件

要向 Pig 作業新增元件,請將四個 Talend 元件(tPigLoad、tPigFilterRow、tPigAggregate、tPigStoreResult)從面板拖放到設計器視窗。

然後,右鍵單擊 tPigLoad 並建立 Pig 合併行到 tPigFilterRow。接下來,右鍵單擊 tPigFilterRow 並建立 Pig 合併行到 tPigAggregate。右鍵單擊 tPigAggregate 並建立 Pig 合併行到 tPigStoreResult。

Adding Pig Job

配置元件和轉換

在 tPigLoad 中,將分發方式設定為 cloudera,並設定 cloudera 版本。請注意,NameNode URI 應為“hdfs://quickstart.cloudera:8020”,資源管理器應為“quickstart.cloudera:8020”。此外,使用者名稱應為“cloudera”。

在輸入檔案 URI 中,為 Pig 作業提供 NYSE 輸入檔案的路徑。請注意,此輸入檔案應存在於 HDFS 上。

NYSE Input

單擊“編輯模式”,新增列及其型別,如下所示。

Edit Schema

在 tPigFilterRow 中,選擇“使用高階過濾器”選項,並在過濾器選項中輸入“stock_symbol == ‘IBM’”。

Filter Option

在 tAggregateRow 中,單擊“編輯模式”並在輸出中新增 avg_stock_volume 列,如下所示。

Avg Stock Volume

現在,將 stock_exchange 列放入“分組依據”選項。在“操作”欄位中新增 avg_stock_volume 列,使用 count 函式,並使用 stock_exchange 作為輸入列。

Stock Exchange

在 tPigStoreResult 中,在“結果資料夾 URI”中提供要儲存 Pig 作業結果的輸出路徑。選擇儲存函式為 PigStorage,欄位分隔符(非必需)為“\t”。

Pig Storage

執行 Pig 作業

現在單擊“執行”以執行您的 Pig 作業。(忽略警告)

Executing Pig Job

作業完成後,轉到您為儲存 Pig 作業結果指定的 HDFS 路徑並檢查您的輸出。IBM 的平均股票交易量為 500。

Storing Pig
廣告
© . All rights reserved.