Compare stage DataStage

Compare ステージでは、2 つのソート済み入力データ・セットのレコードを列ごとに比較します。 指定したキー列だけに制限して比較を実行できます。

Compare ステージは処理ステージです。 2 つの入力リンクと 1 つの出力リンクを設定できます。

Compare ステージでは、2 つの入力データ・セットの表定義やパーティション、レコードの内容は変更されません。 どちらのデータ・セットもステージの生成する 1 つの出力データ・セットにそのまま送られます。 比較の結果は出力データ・セットにも記録されます。

このステージでランタイム列のプロパゲーションを使用し、IBM DataStage が実行時に出力列スキーマを定義できるようにすることができます。 このステージは、次の 3 つの列でデータ・セットを出力します。

  • 結果。 比較の結果を示すコードが入ります。
  • 第一に 最初の入力リンクの列が入ったサブレコードです。
  • 番目だ。 2 番目の入力リンクの列が入ったサブレコードです。
出力リンク・メタデータを自分で指定する場合は、定義する親列のサブレコードとしてデータを保持する列を定義する必要があります。 IBM DataStage では、同一の列名のグループを 2 つ指定することはできません。したがって、これらの 2 つのグループに、first.col1 や second.col1 などの固有の名前を付けるためにサブレコードを作成します。 以下のステップを実行してメタデータを指定します。
  1. 最初の入力リンクに対応する出力データの親列を指定し、SQL タイプを不明として設定します。
  2. データを運ぶ実際の列を指定し、親列のこれらのサブレコードを作成します。 それぞれの列に first.colname のように名前を付けます。例えば、first.col1、first.col2 などです。 各列をサブレコードにするには、列を選択し、ショートカット・メニューから「行の編集」を選択し、その列にレベル番号 (例えば、03) を指定します。 (このプロセスを高速化するには、最初の列をサブレコードにし、プロパゲーション値機能を使用して親列の残りの列サブレコードを作成します。)
  3. 2 番目の入力リンクに対応する出力データの親列を指定し、SQL タイプを不明と設定します。
  4. 2 番目の入力リンクからデータを運ぶ実際の列を指定し、2 番目の入力リンクに second.colname のように名前を付け (例えば、second.col1、second.col2) を指定し、これらを親列のサブレコードにします。

Compare ステージをダブルクリックすると、プロパティー・パネルが開きます。 プロパティー・パネルには、次の 3 つのタブがあります。

  • ステージ。 これは常に存在し、ステージに関する一般情報を指定するために使用されます。
  • 入力。 グループ化またはアグリゲートするデータの 詳細を指定します。
  • 出力。 ステージから出力される グループの詳細を指定します。

「入力」タブ

「列」 セクションは、受信データの列定義を指定します。 「拡張」タブでは、入力リンクのデフォルトのバッファリング設定を変更することができます。

「出力」タブ

「列」セクションは、データの列定義を指定します。 「拡張」セクションでは、出力リンクのデフォルトのバッファリング設定を変更することができます。