目次

Search

  1. はじめに
  2. トランスフォーメーションに関する作業
  3. アグリゲータトランスフォーメーション
  4. カスタムトランスフォーメーション
  5. カスタムトランスフォーメーション関数
  6. データマスキングトランスフォーメーション
  7. データマスキングの例
  8. 式トランスフォーメーション
  9. エクスターナルプロシージャトランスフォーメーション
  10. フィルタトランスフォーメーション
  11. HTTPトランスフォーメーション
  12. ID解決トランスフォーメーション
  13. Javaトランスフォーメーション
  14. JavaトランスフォーメーションAPIのリファレンス
  15. Java式
  16. Javaトランスフォーメーションの例
  17. ジョイナトランスフォーメーション
  18. ルックアップトランスフォーメーション
  19. ルックアップキャッシュ
  20. 動的ルックアップキャッシュ
  21. ノーマライザトランスフォーメーション
  22. ランクトランスフォーメーション
  23. ルータトランスフォーメーション
  24. シーケンスジェネレータトランスフォーメーション
  25. ソータトランスフォーメーション
  26. ソース修飾子トランスフォーメーション
  27. SQLトランスフォーメーション
  28. マッピングにおけるSQLトランスフォーメーションの使用
  29. ストアドプロシージャトランスフォーメーション
  30. トランザクション制御トランスフォーメーション
  31. 共有体トランスフォーメーション
  32. 構造化されていないデータのトランスフォーメーション
  33. アップデートストラテジトランスフォーメーション
  34. XMLトランスフォーメーション

トランスフォーメーションガイド

トランスフォーメーションガイド

ルックアッププロパティ

ルックアッププロパティ

[ルックアッププロパティ]タブでは、キャッシングや複数の一致などルックアッププロパティを設定します。ルックアップテーブルに対してクエリーを実行するには、ルックアップ条件またはSQL文を設定します。また、ルックアップテーブル名を変更することもできます。
マッピングを作成する場合は、ルックアップトランスフォーメーションごとにプロパティを設定します。セッションを作成する場合は、トランスフォーメーションごとにインデックスキャッシュサイズやデータキャッシュサイズなどのプロパティをオーバーライドできます。
以下の表では、ルックアップトランスフォーメーションのプロパティについて説明します。
オプション
ルックアップのタイプ
説明
Lookup SQL Override
Relational
ルックアップテーブルに問い合わせるデフォルトSQL文を上書きします。
統合サービスがルックアップ値を問い合わせるのに使用するSQL文を指定します。ルックアップキャッシュが有効な場合に使用します。
ルックアップテーブル名
パイプ ライン
Relational
トランスフォーメーションがルックアップして値をキャッシュするテーブルまたはソース修飾子の名前。Lookupトランスフォーメーションを作成するときは、ルックアップソースとしてソース、ターゲット、またはSource Qualifierを選択します。また、別のデータベースからテーブル、ビュー、またはシノニムをインポートすることもできます。
ルックアップSQL上書きを入力した場合は、ルックアップテーブル名を入力する必要がありません。
ルックアップソースフィルタ
Relational
ルックアップトランスフォーメーションのポートのデータの値に基づいて統合サービスが実行するルックアップを制限します。このオプションを指定する場合は、ルックアップキャッシュを有効にしてください。
ルックアップキャッシュを有効にする
フラットファイル
パイプ ライン
Relational
セッション中に統合サービスがルックアップ値をキャッシュに格納するかどうかを指定します。
ルックアップキャッシュを有効にすると、統合サービスはルックアップソースに対して一度クエリを実行してから値をキャッシュに格納し、セッション中にキャッシュの値をルックアップします。ルックアップ値をキャッシュすると、セッションパフォーマンスを高めることができます。
キャッシュを無効にすると、行がトランスフォーメーションを通過するたびに、統合サービスはルックアップソースにSelect文を発行してルックアップ値を求めます。
統合サービスは、フラットファイルルックアップとパイプラインルックアップを常にキャッシュします。
Lookup Policy on MultipleMatch
フラットファイル
パイプ ライン
Relational
ルックアップトランスフォーメーションがルックアップ条件に一致する複数の行を検出した場合に返す行を指定します。次のいずれかの値を選択します。
  • [最初の値を使用]。ルックアップ条件に一致する最初の行を返します。
  • [最後の値を使用]。ルックアップ条件に一致する最後の行を返します。
  • [すべての値を使用]。一致するすべての行を返します。
  • [任意の値を使用]。統合サービスは、ルックアップ条件に一致する最初の値を返します。すべてのルックアップトランスフォーメーションポートではなく、キーポートに基づいてインデックスを作成します。
  • [エラーを報告]。統合サービスは、エラーを報告し、行を返しません。[更新時に古い値を出力]オプションを有効にしない場合、動的ルックアップの場合に[複数の一致に対するルックアップポリシー]オプションが[エラーを報告]に設定されます。
ルックアップ条件
フラットファイル
パイプ ライン
Relational
[条件]タブで設定したルックアップ条件を表示します。
接続情報
Relational
ルックアップテーブルを含むデータベースを指定します。データベースは、マッピング、セッション、またはパラメータファイルの中で定義できます。
  • Mapping。接続オブジェクトを選択します。データベースの接続タイプを指定することもできます。リレーショナル接続の場合、接続名の先頭に
    リレーショナル:
    を入力します。アプリケーション接続の場合、接続名の先頭に
    Application:
    を入力します。
  • セッション。接続変数$Sourceまたは$Targetを使用します。これらの変数のいずれかを使用する場合、ルックアップテーブルはソースデータベースまたはターゲットデータベースに存在する必要があります。変数ごとにセッションプロパティにデータベース接続を指定します。
  • パラメータファイル。セッションパラメータ$DBConnection
    名前
    または$AppConnection
    名前
    を使用し、これをパラメータファイル内で定義します。
デフォルトでは、ルックアップトランスフォーメーションの作成時に、ソーステーブルを選択した場合は$Sourceが、ターゲットテーブルを選択した場合は$Targetが、Designerによってそれぞれ指定されます。これらの値は、セッションプロパティで上書きできます。
統合サービスがデータベース接続のタイプを決定できない場合、セッションは失敗します。
ソースタイプ
フラットファイル
パイプ ライン
Relational
Lookupトランスフォーメーションがリレーショナルテーブル、フラットファイル、またはSource Qualifierから値を読み込むことを示します。
トレースレベル
フラットファイル
パイプ ライン
Relational
セッションログに含める詳細の量を設定します。
Lookupキャッシュディレクトリ名
フラットファイル
パイプ ライン
Relational
ルックアップソースをキャッシュするようにルックアップトランスフォーメーションが設定されている場合に、ルックアップキャッシュファイルの作成先ディレクトリを指定します。永続ルックアップのオプションが選択されていると、永続ルックアップキャッシュファイルも保存されます。
デフォルトでは、統合サービスは、統合サービスに対して設定されている$PMCacheDirディレクトリを使用します。
Lookup CachePersistent
フラットファイル
パイプ ライン
Relational
統合サービスが、2つ以上のキャッシュファイルを含む永続ルックアップキャッシュを使用するかどうかを示します。ルックアップトランスフォーメーションが永続ルックアップキャッシュを使用するように設定されていても永続ルックアップキャッシュが存在しない場合、統合サービスはセッション実行時にファイルを作成します。ルックアップキャッシュが有効な場合に使用します。
LookupのデータキャッシュサイズLookupのインデックスキャッシュサイズ
フラットファイル
パイプ ライン
Relational
デフォルトは[Auto]です。統合サービスがメモリ内のデータキャッシュおよびインデックスに割り当てるメモリサイズの最大値を示します。キャッシュの数値を使用できます。パラメータファイルのキャッシュ値を使用するか、統合サービスを設定し、自動設定を使用してキャッシュサイズを設定します。キャッシュサイズが決定されるように統合サービスを設定した場合、キャッシュに割り当てられる最大メモリ量も設定できます。
セッションの初期化の際に、統合サービスが設定された量のメモリを割り当てることができない場合、セッションは失敗します。統合サービスはすべてのデータのキャッシュデータをメモリに格納できない場合、ディスクにページングを行います。
ルックアップキャッシュが有効な場合に使用します。
動的ルックアップキャッシュ
フラットファイル
パイプ ライン
Relational
動的ルックアップキャッシュを使用するように指定します。ルックアップキャッシュがターゲットテーブルに行を渡すときに、ルックアップキャッシュに新しい行を挿入またはキャッシュの中の行を更新します。
ルックアップキャッシュが有効な場合に使用します。
更新時に古い値を出力
フラットファイル
パイプ ライン
Relational
動的キャッシュが有効な場合に使用します。このプロパティを有効にすると、統合サービスはルックアップ/出力ポートから古い値を出力します。統合サービスがキャッシュ内の行を更新する場合、入力データに基づいて行を更新する前にルックアップキャッシュに存在していた値を出力します。統合サービスがキャッシュ内に行を挿入する場合、NULL値を出力します。
このプロパティを無効にすると、統合サービスはルックアップ/出力ポートおよび入出力ポートから同じ値を出力します。
このプロパティはデフォルトで有効になっています。
動的キャッシュの更新条件
フラットファイル
パイプ ライン
Relational
動的キャッシュを更新するかどうかを示す式。ルックアップポートまたは入力ポートを使用して式を作成します。式には、入力値またはルックアップキャッシュの値を含めることができます。統合サービスは、条件がTrueでデータがキャッシュに存在する場合にキャッシュを更新します。動的キャッシュが有効な場合に使用します。デフォルトはtrueです。
キャッシュファイル名のプレフィックス
フラットファイル
パイプ ライン
Relational
永続ルックアップキャッシュで使用します。永続ルックアップキャッシュファイルに使用するファイル名の接頭語を指定します。統合サービスは、ディスクに保存する永続キャッシュファイルの名前としてファイル名の接頭語を使用します。接頭語を入力します。.idxまたは.datと入力しないでください。
ファイル名の接頭辞ごとにパラメータまたは変数を入力することができます。パラメータファイルで定義可能なパラメータまたは変数タイプを使用します。
名前付き永続キャッシュファイルが存在する場合、統合サービスはそれらのファイルからメモリキャッシュを構築します。名前付き永続キャッシュファイルが存在しない場合、統合サービスは永続キャッシュファイルを再構築します。
ルックアップソースからの再キャッシュ
フラットファイル
パイプ ライン
Relational
永続ルックアップキャッシュで使用します。永続ルックアップキャッシュを使用していてこのオプションが有効である場合、統合サービスは、ルックアップトランスフォーメーションインスタンスを最初に呼び出すときに、ルックアップソースから永続ルックアップキャッシュを再構築します。
このオプションが有効ではない場合、統合サービスは永続化されたキャッシュファイルを再利用します。
挿入または更新
フラットファイル
パイプ ライン
Relational
動的キャッシュが有効な場合に使用します。行のタイプが「挿入」で、ルックアップトランスフォーメーションに入力される行に対して使用します。有効にすると、統合サービスは行をキャッシュに挿入し、既存の行を更新します。無効にすると、統合サービスは既存の行を更新しません。
更新(または挿入)
フラットファイル
パイプ ライン
Relational
動的キャッシュが有効な場合に使用します。行のタイプが「更新」で、ルックアップトランスフォーメーションに入力される行に対して使用します。
有効にすると、統合サービスは既存の行を更新し、行を挿入します。無効にすると、Integration Serviceは新しい行を挿入しません。
Datetimeフォーマット
フラットファイル
日時フォーマットを選択するには、[開く]をクリックします。形式およびフィールド幅を定義します。ミリ秒、マイクロ秒、ナノ秒のフォーマットは、29のフィールド幅になります。
あるポートについて日時形式を選択しなかった場合、任意の日時形式を入力できます。デフォルトは、MM/DD/YYYY HH24:MI:SSです。日時形式によってポートのサイズが変わることはありません。
桁区切り記号
フラットファイル
ポートの1000ごとの区切り文字を指定しない場合、統合サービスはここで定義されたプロパティを使用します。
区切り記号なし、カンマ、またはピリオドを選択できます。デフォルトは区切り記号なしです。
小数点記号
フラットファイル
ルックアップ定義または[ポート]タブで特定のフィールドに対して小数点記号を指定しない場合、統合サービスはここで定義されたプロパティを使用します。
小数点記号には、カンマまたはピリオドを選択できます。デフォルトはピリオドです。
Case-SensitiveString Comparison
フラットファイル
パイプ ライン
統合サービスは、文字列のカラムに対してルックアップを実行する場合、大文字と小文字を区別した比較を使用します。
リレーショナルルックアップの場合、大文字と小文字を区別した比較はデータベースでサポートされているかどうかによって異なります。
Null Ordering
フラットファイル
パイプ ライン
統合サービスによるNULL値の順序付けの方法を決定します。NULL値を昇順にソートするか降順にソートするかを選択できます。デフォルトでは、統合サービスはNULL値を昇順にソートします。これによって、統合サービスの設定が上書きされ、比較演算子においてNULL値の扱いを昇順、降順またはNULLとします。
リレーショナルルックアップでは、NULLの順序はデータベースのデフォルト値によって決まります。
ソート済み入力
フラットファイル
パイプ ライン
ルックアップファイルのデータがソートされているかどうかを示します。このオプションを選択すると、ファイルのルックアップパフォーマンスが向上します。ソート済み入力が有効化されていて条件カラムがグループ化されていない場合、統合サービスはセッションに失敗します。条件カラムがグループ化されていてソートされていない場合、統合サービスはソート済み入力が設定されていない場合と同様にルックアップを処理します。
ルックアップソースは静的です
フラットファイル
パイプ ライン
Relational
ルックアップソースは、セッション中に変化することがありません。
ルックアップキャッシュの事前作成
フラットファイル
パイプ ライン
Relational
統合サービスは、ルックアップトランスフォーメーションがデータを受け取る前に、ルックアップキャッシュを作成できます。統合サービスは、複数のルックアップキャッシュファイルを同時に作成してパフォーマンスを向上させることができます。
この設定は、マッピングまたはセッションで設定できます。ルックアップトランスフォーメーションオプションを[自動]に設定した場合、統合サービスはセッションレベルの設定を使用します。
以下のいずれかのオプションを設定します。
  • 自動。統合サービスは、このセッションに設定された値を使用します。
  • 常に許可。統合サービスは、ルックアップトランスフォーメーションが最初のソース行を受け取る前に、ルックアップキャッシュを作成できます。統合サービスは追加のパイプラインを作成して、キャッシュを作成します。
  • 常に不許可。統合サービスは、ルックアップトランスフォーメーションが最初の行を受け取るまではルックアップキャッシュを作成できません。
統合サービスが同時に作成できるパイプラインの数を設定する必要があります。ルックアップキャッシュ作成セッションのプロパティ用に追加のコンカレントパイプラインを設定します。このプロパティがゼロより大きい場合、統合サービスはルックアップキャッシュを事前に作成できます。
サブ秒の精度
Relational
日時ポートのサブ秒の精度を指定します。
リレーショナルルックアップの場合は、日付/時刻データの位取りを編集できるデータベースについては、精度を変更できます。サブ秒の精度を変更できるデータ型は、Oracle Timestamp、Informix Datetime、およびTeradata Timestampです。
0-9の正の整数値を入力してください。デフォルトは6マイクロ秒です。プッシュダウンの最適化を有効にすると、データベースはサブ秒の精度の設定に関係なく、完全な日時値を返します。