親ジョブを設定 - 7.2

Data Integrationジョブの例

Version
7.2
Language
日本語 (日本)
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > ジョブデザイン

手順

  1. [Contexts] (コンテキスト)ビューでは以下のようにします:
    1. 以下の3つの変数を追加します:
      • filename、文字列型
      • table_name、文字列型
      • directory、ディレクトリー型
    2. 変数ディレクトリーの[Value] (値)フィールドをクリックして、[directory] (ディレクトリー)を指定します。表示される小さなボタンをクリックして、ソースファイルが保存されているディレクトリーを参照します。
  2. tFileListコンポーネントの[Basic settings] (基本設定)ビューで、[Directory] (ディレクトリー)フィールドにcontext.directoryディレクトリーを埋めます。
    ヒント: フィールド内をクリックし、[Ctrl] + [Shift]キーを押して、使用可能な変数のリストにアクセスします。
  3. tIterateToFlow コンポーネントをダブルクリックし、[Basic settings] (基本設定)ビューを開いて、以下のようにコンポーネントを設定します:
    1. スキーマエディターでfilename(文字列型)という名前のカラムを追加します。
    2. [Mapping] (マッピング)テーブルの[Value] (値)フィールドに、tFileListコンポーネントによって生成されたCURRENT_FILEグローバル変数を((String)globalMap.get("tFileList_1_CURRENT_FILE"))の形式で入力します。
  4. tFixedFlowInputコンポーネントをダブルクリックし、[Basic settings] (基本設定) ビューを開き、コンポーネントを設定します:
    1. スキーマに2つのカラムを追加します: file_name(文字列型)およびtable_name(文字列型)。
    2. [Use Inline Table] (インラインテーブルを使用)オプションを選択し、テーブルで次のファイルからテーブルへのマッピングを定義します:
      file_name table_name
      "customer_details.csv" "customer"
      "delivery_details.csv" "delivery"
      "employee_details.csv" "employee"
  5. tMapコンポーネントをダブルクリックして、マップエディターを開き、マップエディターで以下のようにします:
    1. (tIterateToFlowコンポーネントからの)テーブルrow1filenameカラムをドラッグし、(tFixedFlowInputコンポーネントからの)テーブルrow2file_nameカラムにドロップして、2つのテーブルを結合してファイル名を検索します。
    2. スパナボタンをクリックして結合プロパティを表示し、次の設定を行います:
      • [Match Model] (マッチモデル)[Unique match] (ユニークマッチ)
      • [Join Model] (結合モデル)[Inner Join] (内部結合)
    3. スキーマエディターで、outテーブルに2つのカラムを追加します: tablename(文字列型)およびfilename(文字列型)。
    4. テーブルrow1filenameカラムをドラッグし、テーブルoutfilenameカラムにドロップします。
    5. テーブル row2table_nameカラムをドラッグして、、テーブルouttablenameカラムにドロップします。
    6. [OK]をクリックして設定を検証し、マップエディターを閉じます。
  6. tJavaRowコンポーネントをダブルクリックし、[Code] (コード)フィールドに次のコードを入力します。
    context.tablename = out.tablename;
    context.filename = out.filename;
  7. tRunJobコンポーネントの[Basic settings] (基本設定)ビューでは、以下のようになります:
    1. Jobフィールドの横にある[...]ボタンをクリックし、このサンプルの[Repository Content] (リポジトリーコンテンツ)ダイアログボックス、LoadDynamicSchemaChildから子ジョブを選択します。
    2. コンテキスト変数を子ジョブに渡すには、[Transmit whole context] (コンテキスト全体の送信)オプションを選択します。
  8. [Ctrl] + [S]キーを押してジョブを保存します。