はじめに
参照ビューフィルタを使い、
入力ビューのキー項目を元に、ある値をマスタから取得する
そんな処理を作りました。イメージはこんな感じです。
が、実行してみると処理に時間がかかる・・
何か対策はないかと調べました。
使用製品バージョン
- Waha! Transformer V5.3
発生した問題
参照ビューフィルタの処理に4分超かかる。
- 使用したデータ件数
- 入力ビュー:5件
- 参照しているマスタ:460万件超
したこと
ジョブのソート時メモリサイズを
デフォルトの「64000」KBから10倍の「640000」KBに増やしてみた。
結果
処理時間が2分弱と早くなった!
ソート時メモリサイズの適正値ってあるの?
結論から言うと、
利用環境やジョブ構成によって変わるため、適正値はないそうです。。
1つ言えるのは、
物理メモリ容量を超えないように!
そして、メモリサイズを大きくすればするほどいいものでもないらしい・・
その辺りの詳細については
オンラインヘルプにある下記箇所の説明を見て試してみてください。
「Waha! Transformer オンラインヘルプ」の[Designer]-[ジョブ]-[[ジョブのプロパティ]ダイアログボックス]-[[全般]タブ]にある[補足説明]-[ソート時メモリサイズ ]
ちなみに
参照ビューについてヘルプを見ると
参照処理の前に常に参照条件のキーカラムでソートされます
とあります。
「使用する参照ビューをあらかじめキーカラムでソートしていた場合、処理は早くなったりする?」と思ったのですが、
常に参照条件のキーカラムでソートされるため、処理速度は変わらないようです。
おわりに
ソート時メモリサイズですが、
今回、初めてデフォルト値から変更しました。。
まだまだ学ぶことがありますね。
Waha! Transformerについての記事はニッチだと思うのですが、
誰かの参考になれば幸いです。
