ユーザーガイド > データシップパフォーマンスの最適化 > Verticaデータシップターゲットの時系列関数の使用
 
Verticaデータシップターゲットの時系列関数の使用
Vertica時系列関数を含むビューを定義する際には、考慮すべきいくつかの特別な手順があります。以下の手順は、SQLが完全にVerticaデータベースで実行されるデータシップターゲットビュー内で次のVertica時系列関数を使用する方法のガイドラインとなるものです。
タイムスライスに名前を付けるTIMESERIES SELECT句
TS_FIRST_VALUE
TS_LAST_VALUE
制限
Vertica以外のデータソースでVertica時系列関数を実行すると、処理エラーが発生します。
タイムゾーンがある時刻関数とタイムゾーンがあるタイムスタンプ関数には、マイクロ秒とナノ秒の精度もタイムゾーン情報もありません。この制限を回避する方法の1つは、CAST関数を使用してタイムゾーン値をVARCHAR値に変換することです。
Vertica時系列関数を使用するには
1.時系列関数を使用するデータソースからビューを作成または特定します。
2.Vertica以外のデータソースが関係している場合は、Verticaをターゲットとしてデータシップを有効にします。詳細については、「データソースのデータシップ構成の完了」を参照してください。
3.Verticaをソースとしてデータシップを有効にします。
4.ビューコードを操作して、Vertica時系列関数を利用します。時系列構文の詳細については、『Vertica Programmers Guide(Verticaプログラマーガイド)』と『Vertica Reference Guide(Verticaリファレンスガイド)』を参照してください。次のビューSQLは、Vertica時系列関数を使用するデータシップクエリーを記述する方法の1つを示すサンプルとして用意したものです。
SELECT
store_key, cc_class, case when store_key is not null then store_key end mycase
FROM
/users/composite/test/sources/vertica50/store/store_dimension
inner join
/users/composite/test/sources/netezza50/TPCDS100_2/TPCDS100/PROD/CALL_CENTER
ON cc_call_center_sk = store_key
timeseries ts as '3 hour'
over (partition by store_key, first_open_date, cc_class
order by cast(cc_rec_start_date as timestamp))
order by case when ts is not null then ts end , store_key
 
5.ビューをテストして、すべてのSQLがVerticaデータベースにプッシュされ、処理されることを確認します。