Talend-working-with-pig

提供:Dev Guides
移動先:案内検索

Talend-Pigを使用する

この章では、TalendでPigジョブを扱う方法を学びましょう。

Talend Pigジョブの作成

このセクションでは、TalendでPigジョブを実行する方法を学びましょう。 ここでは、NYSEデータを処理して、IBMの平均在庫量を調べます。

このために、[ジョブデザイン]を右クリックして、新しいジョブpigjobを作成します。 ジョブの詳細に言及して、[完了]をクリックします。

Talend Pig Job

Pigジョブへのコンポーネントの追加

コンポーネントをPigジョブに追加するには、4つのTalendコンポーネント(tPigLoad、tPigFilterRow、tPigAggregate、tPigStoreResult)をパレットからデザイナーウィンドウにドラッグアンドドロップします。

次に、tPigLoadを右クリックし、tPigFilterRowにPig Combine行を作成します。 次に、tPigFilterRowを右クリックし、tPigAggregateにPig Combine行を作成します。 tPigAggregateを右クリックして、tPigStoreResultへのPig結合ラインを作成します。

豚ジョブの追加

コンポーネントと変換の構成

tPigLoadで、clouderaおよびclouderaのバージョンとして配布に言及します。 Namenode URIは「hdfs://quickstart.cloudera:8020」であり、Resource Managerは「quickstart.cloudera:8020」であることに注意してください。 また、ユーザー名は「cloudera」にする必要があります。

入力ファイルURIで、NYSE入力ファイルのパスをpigジョブに指定します。 この入力ファイルはHDFSに存在する必要があることに注意してください。

NYSE入力

[スキーマの編集]をクリックし、以下に示すように列とそのタイプを追加します。

スキーマの編集

tPigFilterRowで、「高度なフィルターを使用」オプションを選択し、フィルターオプションに「stock_symbol = = ‘IBM」と入力します。

フィルターオプション

tAggregateRowで、スキーマの編集をクリックし、以下に示すように出力にavg_stock_volume列を追加します。

平均在庫量

次に、stock_exchange列をグループ化オプションに追加します。 操作フィールドにavg_stock_volume列を追加し、入力関数としてcount Functionとstock_exchangeを追加します。

証券取引所

tPigStoreResultで、Pigジョブの結果を保存する結果フォルダーURIの出力パスを指定します。 保存機能をPigStorageとして選択し、フィールド区切り記号(必須ではない)を「\ t」として選択します。

Pig Storage

豚の仕事を実行する

次に、実行をクリックして、Pigジョブを実行します。 (警告を無視)

ブタのジョブの実行

ジョブが終了したら、pigジョブの結果を保存するために言及したHDFSパスで出力を確認します。 IBMの平均在庫量は500です。

ブタの保管