Time Travel を使った過去データのクエリ
Snowy Peak の夜間バッチジョブにより、2 件のキャンセル済みアカウントが subscriptions テーブルに追加されました。データチームは、バッチ実行直前の行数と現在の行数を比較したいと考えています。Snowflake の Time Travel を使えば、外部バックアップなしにこれが可能です。
snowy_peak.subscriptions テーブルには、subscription_id、user_email、plan、status、start_date、monthly_fee の各列があります。セッション変数 $snapshot_ts には、バッチ更新が実行される直前に取得されたタイムスタンプが格納されています。
この演習はコースの一部です
Snowflake アーキテクチャ
演習の手順
AT (TIMESTAMP => ...)を使って、バッチ更新前の状態のsnowy_peak.subscriptionsをクエリしましょう。タイムスタンプにはセッション変数$snapshot_tsを使用してください。- 行数を
pre_update_countとして集計し、2 件のキャンセル済みアカウントが追加される前のサブスクリプション件数を確認しましょう。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
-- Count subscriptions before the overnight batch update
SELECT COUNT(*) AS pre_update_count
FROM snowy_peak.subscriptions
AT (___ => ___);