目次

Search

  1. はじめに
  2. トランスフォーメーションについて
  3. トランスフォーメーションポート
  4. トランスフォーメーションキャッシュ
  5. アドレスバリデータトランスフォーメーション
  6. アグリゲータトランスフォーメーション
  7. 関連付けトランスフォーメーション
  8. 不良レコードの例外トランスフォーメーション
  9. 大文字小文字変換プログラムトランスフォーメーション
  10. 分類子トランスフォーメーション
  11. 比較トランスフォーメーション
  12. 統合トランスフォーメーション
  13. 1028データマスキングトランスフォーメーション
  14. データプロセッサトランスフォーメーション
  15. ディシジョントランスフォーメーション
  16. 重複レコードの例外トランスフォーメーション
  17. 式トランスフォーメーション
  18. フィルタトランスフォーメーション
  19. 階層型からリレーショナルへのトランスフォーメーション
  20. Javaトランスフォーメーション
  21. JavaトランスフォーメーションAPIのリファレンス
  22. Java式
  23. ジョイナトランスフォーメーション
  24. キージェネレータトランスフォーメーション
  25. ラベラトランスフォーメーション
  26. ルックアップトランスフォーメーション
  27. ルックアップキャッシュ
  28. 動的ルックアップキャッシュ
  29. 一致トランスフォーメーション
  30. フィールド分析での一致トランスフォーメーション
  31. ID分析での一致トランスフォーメーション
  32. マージトランスフォーメーション
  33. ノーマライザトランスフォーメーション
  34. パーサートランスフォーメーション
  35. ランクトランスフォーメーション
  36. 読み取りトランスフォーメーション
  37. リレーショナルから階層型へのトランスフォーメーション
  38. REST Webサービスコンシューマトランスフォーメーション
  39. ルータトランスフォーメーション
  40. シーケンスジェネレータトランスフォーメーション
  41. ソータートランスフォーメーション
  42. SQLトランスフォーメーション
  43. 標準化トランスフォーメーション
  44. 共有体トランスフォーメーション
  45. アップデートストラテジトランスフォーメーション
  46. Webサービスコンシューマトランスフォーメーション
  47. WebサービスSOAPメッセージの解析
  48. WebサービスSOAPメッセージの生成
  49. 加重平均トランスフォーメーション
  50. 書き込みトランスフォーメーション
  51. トランスフォーメーションの区切り文字

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

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

Javaトランスフォーメーションによるプッシュイン最適化

Javaトランスフォーメーションによるプッシュイン最適化

副次作用がなく、最適化がマッピング結果に影響しない場合は、最適化にプッシュインでアクティブJavaトランスフォーメーションを有効にできます。
Javaトランスフォーメーションで最適化にプッシュインを設定するときは、Javaトランスフォーメーションがオプティマイザから受け取るフィルタ条件を格納する方法を定義します。フィルタ条件を調べるコードを追加します。 Javaトランスフォーメーションがフィルタロジックを吸収できる場合、JavaトランスフォーメーションはTrueの条件をオプティマイザに戻します。 オプティマイザは、最適化されたマッピングからフィルタトランスフォーメーションを削除します。
Javaトランスフォーメーションを設定するときは、最適化中にフィルタ条件をトランスフォーメーションのメタデータとして格納するコードを記述します。 実行時にフィルタ条件を取得するコードや、フィルタロジックに従って行を削除するコードも記述します。
Javaトランスフォーメーションを定義するときは、Javaトランスフォーメーションの
[最適化インタフェース]
タブで、最適化にプッシュインのコードを追加します。 最適化にプッシュインのコードスニペットにアクセスするには、
[最適化インタフェース]
タブのナビゲータで、FilterPushdownOptimizationを選択します。
最適化にプッシュインを有効にするコードスニペットや、オプティマイザからフィルタ条件を取得するコードスニペットが表示されます。 最適化を有効にしたり、フィルタロジックをトランスフォーメーションのメタデータとして保存したりするには、コードスニペットを更新します。

isFilterSupported

最適化にプッシュインを有効にする場合は、Trueを返します。 最適化にプッシュインを無効にする場合は、Falseを返します。
最適化にプッシュインを有効にするためにTrueを返すようにこの関数を変更します。
public ResultAndMessage isFilterSupported() { // To enable filter push-into optimization this function should return true // return new ResultAndMessage(true, ""); return new ResultAndMessage(false, "Filter push-into optimization is not supported"); }

pushFilter

オプティマイザからフィルタ条件を受け取ります。
フィルタを調べ、トランスフォーメーションでフィルタロジックが使用可能かどうかを判断するコードを追加します。 Javaトランスフォーメーションがフィルタを吸収できる場合は、次のメソッドを使用してフィルタ条件をトランスフォーメーションのメタデータとして格納します。
storeMetadata(String key、String data)
このキーは、メタデータの識別子です。 任意の文字列をキーとして定義できます。 このデータは、実行時に削除する行を指定するために格納するデータです。 例えば、このデータは、Javaトランスフォーメーションがオプティマイザから受け取るフィルタ条件である可能性があります。
public ResultAndMessage pushFilter(InfaExpression condition) { // Add code to absorb the filter // If filter is successfully absorbed return new ResultAndMessage(true, ""); and the optimizer // will remove the filter from the mapping // If the filter is not absorbed, return new ResultAndMessage(false, msg); return new ResultAndMessage(false, "Filter push-into optimization is not supported"); }

0 COMMENTS

We’d like to hear from you!
Hi, I'm Bolo!
What would you like to know?
Please to access Bolo.