ETLの計算ステップによる時間処理

|
こんにちは。
今日は、ETLのTransformationが持っている計算ステップのお話です。
計算ステップはデフォルトで様々な計算機能を持っているのですが、時間や日数の処理についても準備されています。

その中の以下の機能をご紹介したいと思います。
・Hour of Day of Date A :指定した日の時間を取得
・Minute of Hour Date A :指定した時間の分を取得
・Second of Minute of Date A :指定した分の秒を取得
・日付Aの年ごとの日数 :指定した年の経過日数を取得
・日付Aの月ごとの日数 :指定した月の経過日数を取得
・日付Aの週ごとの日数 :指定した週の経過日数を取得
・日付Aで指定した年の週ごと :指定した年の経過週数を取得

ご紹介のために、以下の様なTransformationを作成しました。
calc_time1.png

これを実行すると以下のようになります。
calc_time2.png

「sysdate」 → 今回対象となる日付
「時間」 → Hour of Day of Date A :"17:36:46"の"17"を取得
「分」 → Minute of Hour Date A :"17:36:46"の"36"を取得
「秒」 → Second of Minute of Date A :"17:36:46"の"46"を取得
「年毎の日数」 → 日付Aの年ごとの日数 :"2014/08/13"時点でのその年の経過日数を取得
「月毎の日数」 → 日付Aの月ごとの日数 :"2014/08"時点でのその月の経過日数を取得
「週毎の日数」 → 日付Aの週ごとの日数 :"2014/08/13"時点でのその週の経過日数を取得
「年毎の日数」 → 日付Aで指定した年の週ごと :"2014/08/13"時点での年の経過週数を取得

上記以外にも日数の計算なども、機能として持っています。
スクリプトで書くと意外と面倒な時間の計算ですが、ETLを使用すれば簡単に記述することが可能です。
一度お試しください。

★Have a nice open source day★
KSK Analytics Pentaho Team

2014年8月

          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31