[Reload at each row] (行ごとにリロード) - Cloud - 8.0

Talend Studioユーザーガイド

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

このタスクについて

[Reload at each row] (行ごとにリロード)オプションは、メインフローのレコードごとにルックアップフローの全レコードをロードする場合に使用します。

メインフローの行がルックアップフローよりもはるかに少なく(たとえば、比率が1000以上)、ルックアップ入力がデータベースコンポーネントである場合、このアプローチの利点は、ルックアップデータの量が時間の経過と共に増えるという問題への対処に役立つことにあります。データベースコンポーネント内のメインフローからのデータに対してクエリーを実行し、メインフロー内の各レコードに該当するルックアップデータのみを選択できるためです。たとえば以下の例では、MySQLデータベースからのルックアップデータを使用しています。

メインフロー、ルックアップフロー、および出力フローのスキーマは次のように表されます。

MySQLデータベースからメインフローのidカラムの値に一致するデータのみを選択できます。この操作は次の手順で行います。

手順

  1. tMysqlInputをダブルクリックして、[Component] (コンポーネント)ビューを開きます。
  2. [Query] (クエリー)フィールドに、メインフローの[id] (ID)カラムに一致するデータを選択するクエリーを入力します。このサンプルでは、このクエリーは次のようになります: Select * from person where id="+(Integer)globalMap.get("id")

タスクの結果

この例で使用したコンポーネントの詳細は、関連ドキュメンテーションをご覧ください。