- カテゴリ:
FRESHNESS (システムデータメトリック関数)¶
タイムスタンプ列の最大値と、データメトリック関数が実行される予定時刻との差を秒単位で返します。
構文¶
SNOWFLAKE.CORE.FRESHNESS(<query>)
引数¶
query
テーブルまたはビューのSQLクエリを指定します。
許可されるデータ型¶
query
内の参照される列には、以下のいずれかのデータ型が必要です。
DATE
TIMESTAMP_LTZ
TIMESTAMP_TZ
戻り値¶
この関数は、 NUMBER データ型のスカラー値を返します。
アクセス制御の要件¶
システムDMFを使用するには、次のアクセス制御アプローチのいずれかを選択します。
テーブルに対する OWNERSHIP 権限を持つロールであるテーブル所有者ロールに、DATA_METRIC_USERデータベースロールを付与します。このデータベースロールは、SNOWFLAKE.CORE スキーマに対する USAGE 権限と、SNOWFLAKE.CORE スキーマにあるすべてのシステム DMFs に対する USAGE 権限を持ちます。
さらに、このテーブルの権限をテーブル所有者ロールに付与します。
権限
オブジェクト
メモ
EXECUTE DATA METRIC FUNCTION
アカウント
この権限により、どのロールがサーバーレスのコンピューティングリソースにアクセスできるかを制御し、システムDMFを呼び出すことができます。
USAGE
データベース、スキーマ
これらのオブジェクトは、
query
で参照されているテーブルを含むデータベースとスキーマです。テーブル内の権限をテーブル所有者ロールに付与し、これらの権限をテーブル所有者ロールに付与します。
SNOWFLAKE データベースに対する IMPORTED PRIVILEGES詳細については、 他のロールが SNOWFLAKE データベースのスキーマを使用できるようにする をご参照ください。
ACCOUNTADMIN ロールを使用します。
指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。
セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。
例¶
TIMESTAMP
列を測定して、テーブルのデータ鮮度(300秒または5分)を判断します。
SELECT SNOWFLAKE.CORE.FRESHNESS(
SELECT
timestamp
FROM hr.tables.empl_info
) < 300;
+---------------------------------------------------------------------+
| SNOWFLAKE.CORE.FRESHNESS(SELECT timestamp FROM hr.tables.empl_info) |
+---------------------------------------------------------------------+
| True |
+---------------------------------------------------------------------+