目次

Search

  1. はじめに
  2. Informatica Big Data Managementの概要
  3. マッピング
  4. ソース
  5. ターゲット
  6. トランスフォーメーション
  7. クラスタワークフロー
  8. プロファイル
  9. 監視
  10. 階層データ処理
  11. 階層データ処理設定
  12. スキーマが変更された階層データの処理
  13. インテリジェント構造モデル
  14. ステートフルコンピューティング
  15. 接続
  16. データ型リファレンス
  17. 関数リファレンス

ユーザーガイド

ユーザーガイド

SparkエンジンでのJavaトランスフォーメーション

SparkエンジンでのJavaトランスフォーメーション

Sparkエンジンの処理ルールには、データ統合サービスの処理ルールと異なるものがあります。

一般的な制限

Javaトランスフォーメーションのサポートには、Sparkエンジンでは次の制限があります。
  • トランスフォーメーションロジックをHadoopにプッシュするときに、トランスフォーメーション内のJavaコードは、出力を標準出力に書き込むことはできません。Javaコードは、標準エラーに出力を書き込むことはできます。このエラーはログファイルに表示されます。
  • 日時の値の場合、Sparkエンジンで最大マイクロ秒の精度がサポートされます。日時の値にナノ秒が含まれている場合、後続の桁は切り詰められます。

パーティション化

Javaトランスフォーメーションには、パーティション化と一緒に使用される場合に次の制限があります。
  • パーティション化が可能なプロパティが、Javaトランスフォーメーションで有効である必要があります。トランスフォーメーションは1つのパーティション内では実行できません。
  • 次の制限がトランスフォーメーション範囲プロパティに適用されます。
    • トランスフォーメーション範囲の値トランザクションは有効ではありません。
    • パーティションキーの入力ポートを有効にした場合、トランスフォーメーション範囲は[すべての入力]に設定される必要があります。
    • ステートレスは、トランスフォーメーション範囲が行の場合に有効にされる必要があります。

マッピング検証

マッピング検証は、次の場合に失敗します。
  • Javaトランスフォーメーション内の式から未接続のルックアップトランスフォーメーションを参照した。
  • 複合データ型のポートをパーティションまたはソートキーとして選択した。
  • 日時でナノ秒処理を有効にし、Javaトランスフォーメーションに、日時型の要素を持つ複合データ型のポートが含まれる。例えば、
    array<data/time>
    型のポートは、日時でナノ秒処理を有効にした場合に有効ではありません。
  • 高精度を有効にしているときに、Javaトランスフォーメーションに含まれている式が小数位ポートまたはdecimalデータ型の要素を持つ複合ポートを使用し、ポートが演算子で使用されている場合。
    例えば、トランスフォーメーションに小数位ポート
    decimal_port
    が含まれ、式
    decimal_port + 1
    を使用する場合、検証エラーが発生します。
マッピングは、次の場合に失敗します。
  • Javaトランスフォーメーションに小数位ポートまたはdecimalデータ型の要素を持つ複合ポートが含まれているときに、Javaトランスフォーメーションとマッピングが異なる精度モードを使用する場合。
    マッピングで高精度が有効にされている場合でも、マッピングにdecimalデータ型の要素を持つ複合ポートが含まれているときや、マッピングがストリーミングマッピングであるときなど、マッピングがデータを低精度モードで処理することがあります。Javaトランスフォーメーションとマッピングの両方で高精度が有効にされていても、マッピングが低精度モードでデータを処理した場合、マッピングは失敗します。

外部.jarファイルの使用

Javaトランスフォーメーション内で外部.jarファイルを使用するには、次の手順を実行します。
  1. 外部.jarファイルを、データ統合サービスマシン内の次の場所にあるInformaticaのインストールディレクトリにコピーします。
    <Informatic installation directory>/services/shared/jars
  2. データ統合サービスをリサイクルします。
  3. Developer toolをホストするマシンが、Javaトランスフォーメーションを含むマッピングを開発して実行する場所です。
    1. 外部.jarファイルを、ローカルマシンのディレクトリにコピーします。
    2. Javaトランスフォーメーションを、そのローカル.jarファイルをポイントするインポート文を含めるように編集します。
    3. Javaトランスフォーメーションのクラスパスを更新します。
    4. トランスフォーメーションをコンパイルします。