ダイナミックスキーマ
このタスクについて
Talend Studioでは、ジョブ内の特定のコンポーネントのスキーマにダイナミックカラムを追加できます。ダイナミックカラムは、スキーマ内の唯一のカラムで構成されている場合もあれば、既知のカラム(スキーマの最後のカラムなど)の後に追加されることもあります。
ダイナミックカラムでは、スキーマで定義されていないカラムが取得されます。そのため、ジョブの設計時は不明なソースカラムが実行時には認知され、スキーマに追加されます。それによってジョブデザインが非常に容易になり、多くのカラムで一対一によるマッピングが可能になります。ダイナミックカラムには用途が数多くあります。たとえば、開発者はデータ移行タスクで、カラムを個別にマッピングせずにデータのカラムを他の場所にコピーできます。
スキーマエディタで設定された静的オブジェクト(データパターンやデフォルト値など)はダイナミックカラムには考慮されないので、注意が必要です。
ダイナミックスキーマ機能によってジョブデザインは非常に容易になりますが、すべてのコンポーネントで動作するわけではありません。この機能をサポートしているコンポーネントのリストを参照するには、<install_dir>/plugins/に移動し(<install_dir>はTalend Studioのインストールディレクトリー)、jarファイルorg.talend.core.tis_<version>.jarを抽出し、resourcesフォルダーにあるテキストファイルsupportDynamic.txtを取得します。
ダイナミックスキーマの定義の詳細は、ダイナミックスキーマカラムを定義をご覧ください。
ダイナミックカラムのマッピングの詳細は、ダイナミックカラムをマッピングをご覧ください。
ジョブでダイナミックスキーマ機能を使用する例は、Dynamic Schemaをご覧ください。
ダイナミックスキーマカラムを定義
Procedure
ダイナミックカラムをマッピング
About this task
tMapコンポーネントでのダイナミックカラムのマッピングは、[Map Editor] (マップエディター)を使用する場合と同様に容易です。入力スキーマから出力スキーマにダイナミックカラムをドロップするだけでは、どのカラム値も変更されません。
ただし、次の制限事項が適用されます。
- ダイナミックカラムは1対1でマッピングする必要があり、途中で変換することはできません。
- ダイナミックカラムはフィルター式や変数では使用できません。
- ダイナミックカラムは出力テーブルでは名前を変更できないほか、結合条件として使用することもできません。