システムデータメトリック関数

このトピックでは、Snowflakeがすべてのアカウントに提供するシステムデータメトリック関数(DMFs)を参照します。

これらのシステム DMFs を呼び出して、すぐにデータ品質の測定を開始することができます。

システムDMFsについて

Snowflakeは、共有 SNOWFLAKE データベース の CORE スキーマでシステム DMFs を提供します。システムDMFsは Snowflake によって管理されます。システムDMFの名前や機能を変更することはできません。

各システムDMFでは、異なるデータ品質属性を測定できます。テーブルや表示に複数のシステムDMFを割り当てて、より包括的なデータ品質測定を可能にし、データガバナンスやコンプライアンスのニーズに対応することができます。

システムDMFを使用するには、次のアクセス制御アプローチのいずれかを選択します。

  • テーブルに対する OWNERSHIP 権限を持つロールであるテーブル所有者ロールに、DATA_METRIC_USERデータベースロールを付与します。このデータベースロールは、SNOWFLAKE.CORE スキーマに対する USAGE 権限と、SNOWFLAKE.CORE スキーマにあるすべてのシステム DMFs に対する USAGE 権限を持ちます。

    さらに、このテーブルの権限をテーブル所有者ロールに付与します。

    権限

    オブジェクト

    メモ

    EXECUTE DATA METRIC FUNCTION

    アカウント

    この権限により、どのロールがサーバーレスのコンピューティングリソースにアクセスできるかを制御し、システムDMFを呼び出すことができます。

    USAGE

    データベース、スキーマ

    これらのオブジェクトは、 query で参照されているテーブルを含むデータベースとスキーマです。

  • テーブル内の権限をテーブル所有者ロールに付与し、これらの権限をテーブル所有者ロールに付与します。

  • ACCOUNTADMIN ロールを使用します。

システム DMF の呼び出し

DMFを手動で呼び出す場合は、必要な権限を持つロールを使用する必要があります。

DMFを呼び出すには、以下の構文を使用します。

SELECT <data_metric_function>(<query>)
Copy

条件:

data_metric_function

システムまたはユーザー定義のDMFを指定します。

query

テーブルまたはビューのSQLクエリを指定します。

クエリの列はDMFシグネチャの列引数と一致している必要があります。

注釈

これらのシステムDMFsは、引数を取らないため、この構文には従いません:

例えば、 NULL_COUNT (システムデータメトリック関数) システム DMF を呼び出して、 SSN 列の NULL 値(US 社会保障番号)の数を表示します。

USE ROLE data_engineer;
SELECT SNOWFLAKE.CORE.NULL_COUNT(
  SELECT ssn
  FROM hr.tables.empl_info
);
Copy

イベントテーブルをクエリして結果を表示できます。詳細については、 DMF結果を表示する をご参照ください。

システム DMF のスケジューリング

詳細については、 実行するDMFsをスケジュールする をご参照ください。

システム DMFs

現在、SnowflakeはこれらのシステムDMFsをサポートしており、一般的なメトリックを定義しなくても測定できます。

カテゴリ

システム DMFs

メモ

精度

鮮度

  • 列データの鮮度を判定します。

  • カスタム鮮度メトリックを定義します。

統計

独自性

  • NULL値を含む、列内の重複値の数を決定します。

  • 列内のNULL以外の値の数を決定します。

ボリューム