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

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

このタスクについて

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

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

デザインワークスペースでのジョブ。

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

[マップエディター]。

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

手順

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

タスクの結果

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

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

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