メイン コンテンツをスキップする 補完的コンテンツへスキップ

ダイナミックスキーマに基づいて値を集計するジョブを設定する

tAggregateRowコンポーネントを使用して、ダイナミックスキーマカラムに基づいてCSVファイルにいくつかのタスク割り当てデータを集計するようにジョブを設定するために使われます。

次に、このジョブは、tLogRowコンポーネントを使用して集計データをコンソールに表示し、tFileOutputDelimitedコンポーネントを使用して出力CSVファイルに書き込みます。

手順

  1. tFileInputDelimitedコンポーネントをダブルクリックして、[Basic settings] (基本設定)ビューを開きます。
  2. [File name/Stream] (ファイル名/ストリーム)フィールドに、次のタスク割り当てデータを保持するCSVファイルへのパスを指定します。この例ではD:/tasks.csvです。
    task;team;status
    task1;team1;done
    task2;team2;done
    task3;team1;done
    task4;team2;pending
    task5;team1;pending
    task6;team2;pending
  3. ファイルの先頭でスキップする行数を[Header] (ヘッダー)フィールドに入力します。この例では1です。
    ダイナミックスキーマ機能は[Built-In] (組み込み)モードでのみサポートされており、ヘッダー行を付けるには入力ファイルが必要になります。
  4. [Edit schema] (スキーマを編集)の横にあるボタンをクリックしてスキーマダイアログボックスを開き、String型のtaskおよびDynamic型のotherの2つのカラムを追加してスキーマを定義します。完了したら、[OK]をクリックして変更を保存し、スキーマダイアログボックスを閉じます。
    ダイナミックカラムはスキーマの最後の行で定義する必要があります。ダイナミックスキーマの詳細は、 Talend Studioユーザーガイドをご覧ください。
  5. tAggregateRowコンポーネントをダブルクリックし、[Basic settings] (基本設定)ビューで[Sync columns] (カラムを同期)ボタンをクリックして、先行コンポーネントからスキーマを取得します。
  6. [Group by] (グループ基準)テーブルの下にあるボタンをクリックして1つの行を追加し、[Output column] (出力カラム)カラムフィールドと[Input column position] (入力カラムの位置)カラムフィールドの両方からotherを選択して、入力データをotherダイナミックカラムでグルーピングします。
    ダイナミックカラム集計は、グルーピング操作に対してのみ実行できます。
  7. [Operations] (操作)テーブルに1行を追加し、実行する操作を定義します。この例では、操作ファンクションはlistです。次に、[Output column] (出力カラム)カラムフィールドと[Input column position] (入力カラムの位置)カラムフィールドの両方からtaskを選択して、グルーピング結果のtaskカラムのエントリーをリスト表示します。
  8. tLogRowコンポーネントをダブルクリックして[Basic settings] (基本設定)ビューを開き、[Mode] (モード)エリアで[Table (print values in cells of a table)] (テーブル(テーブルのセルに値を表示))を選択します。これで結果の表示が改善します。
  9. tFileOutputDelimitedコンポーネントをダブルクリックして[Basic settings] (基本設定)ビューを開き、集計したデータを書き込むCSVファイルへのパスを[File Name] (ファイル名)フィールドに指定します。この例では D:/tasks_aggregated.csvです。
  10. 各カラムのヘッダーをCSVファイルに含めるには、[Include Header] (ヘッダーを含める)チェックボックスをオンにします。

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。