目次

Search

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

ユーザーガイド

ユーザーガイド

Sparkエンジンでのアップデートストラテジトランスフォーメーション

Sparkエンジンでのアップデートストラテジトランスフォーメーション

Hive ACIDをサポートするHadoopディストリビューションで、アップデートストラテジトランスフォーメーションを使用できます。
アップデートストラテジトランスフォーメーションを使用して、マッピングの結果をJDBC準拠のリレーショナルターゲットに書き込むこともできます。
Sparkエンジンの処理ルールには、データ統合サービスの処理ルールと異なるものがあります。

Hiveターゲットの一般的な制限

アップデートストラテジトランスフォーメーションは、ターゲットがHiveテーブルまたはJDBC準拠のテーブルであるときは、拒否された行を次のトランスフォーメーションに転送しません。
アップデートストラテジトランスフォーメーションが、同じプライマリキー値に対して複数の行の更新を受け取った場合、トランスフォーメーションは1つのランダムな行を選択してターゲットを更新します。
複数のアップデートストラテジトランスフォーメーションが、同じターゲットの異なるインスタンスに書き込む場合、ターゲットデータが予測できなくなる場合があります。
Sparkエンジンでマッピングを実行する場合、Hive Mergeを使用するオプションを選択できます。このオプションには、次の制限事項があります。
  • 削除または更新対象の単一行は、ターゲットの複数行と一致させることはできない。マッピングがこの制限に違反すると、マッピングはランタイムエラーで失敗する。
  • アップデートストラテジトランスフォーメーションでパーティション化カラムまたはバケット化カラムを更新するよう設定すると、マッピングでHive MERGEオプションが無視され、カラムは更新されない。
Developer toolとデータ統合サービスは、これらの制限に対して検証を行いません。式またはマッピングがこれらの制限事項に違反している場合、マッピングが実行される可能性はありますが、期待どおりの結果にはなりません。
Hiveターゲットは、更新を常に更新操作として実行します。Hiveターゲットは、[更新しない場合は挿入]または[挿入時に更新]をサポートしません。

マッピング検証

マッピング検証は、次の場合に失敗します。
  • アップデートストラテジトランスフォーメーションが、複数のターゲットに接続されている。
  • アップデートストラテジトランスフォーメーションが、ターゲットの直前に配置されていない。
  • アップデートストラテジトランスフォーメーションのターゲットが外部のACIDテーブルである。
  • ターゲットに接続されたプライマリキーが含まれていない。
  • 実行時のHiveまたはリレーショナルターゲットテーブルの切り詰めを有効にするプロパティが選択されている。
  • 実行時のHiveまたはリレーショナルターゲットテーブルについて次のターゲットストラテジの1つが選択されている。
    • ターゲットテーブルの作成または置換
    • ApplyNewColumns
    • ApplyNewSchema
    • 失敗
ターゲットがHiveターゲットのとき、マッピングは次の場合に失敗します。
  • ターゲットテーブルがトランザクションに対して有効化されていない。
  • ターゲットがORCバケット化されていない。

Hiveターゲットテーブルの使用

アップデートストラテジトランスフォーメーションと一緒にHiveターゲットテーブルを使用するには、Hiveのデータ定義言語の句
TBLPROPERTIES ("transactional"="true")
を使用して、Hiveターゲットテーブルを作成する必要があります。
Hiveターゲットと一緒にアップデートストラテジトランスフォーメーションを使用するには、Hadoop接続に関連付けられたhive-site.xml設定セットに次のプロパティが設定されていることを確認します。
hive.support.concurrency true hive.enforce.bucketing true hive.exec.dynamic.partition.mode nonstrict hive.txn.manager org.apache.hadoop.hive.ql.lockmgr.DbTxnManager hive.compactor.initiator.on true hive.compactor.worker.threads 1

JDBCターゲットテーブルの使用

マッピングのアップデートストラテジトランスフォーメーションのJDBC準拠のリレーショナルデータベースターゲットを設定して、Sparkエンジンで実行することができます。