Catégories :

Information Schema , Fonctions de table

DATA_METRIC_FUNCTION_REFERENCES

Renvoie une ligne pour chaque objet auquel est attribuée la fonction de métrique des données spécifiée ou renvoie une ligne pour chaque fonction de métrique des données attribuée à l’objet spécifié.

Voir aussi :

Vue DATA_METRIC_FUNCTION_REFERENCES (vue Account Usage)

Syntaxe

DATA_METRIC_FUNCTION_REFERENCES(
  METRIC_NAME => '<string>' )

DATA_METRIC_FUNCTION_REFERENCES(
  REF_ENTITY_NAME => '<string>' ,
  REF_ENTITY_DOMAIN => '<string>'
  )
Copy

Arguments

METRIC_NAME => 'string'

Spécifie le nom de la fonction de métrique des données.

  • Le nom de métrique des données complet doit être placé entre guillemets simples.

  • Si le nom de métrique des données est sensible à la casse ou inclut des caractères spéciaux ou des espaces, des guillemets doubles sont nécessaires pour traiter la casse/les caractères. Les guillemets doubles doivent être placés entre guillemets simples, par exemple '"<metric_name>"'.

REF_ENTITY_NAME => 'string'

Le nom de l’objet, tel que table_name, view_name ou external_table_name, sur laquelle la fonction métrique des données est ajoutée.

  • Le nom entier de l’objet doit être entre guillemets simples.

  • Si le nom de l’objet est sensible à la casse ou inclut des caractères spéciaux ou des espaces, des guillemets doubles sont nécessaires pour traiter la casse / les caractères. Les guillemets doubles doivent être placés entre guillemets simples, par exemple '"<table_name>"'.

REF_ENTITY_DOMAIN => 'string'

Le type d’objet, tel qu’une table ou une vue matérialisée, sur lequel la fonction de métrique de données est ajoutée.

Utiliser 'TABLE' pour tous les types de tables pris en charge.

Renvoie

La fonction renvoie les colonnes suivantes :

Colonne

Type de données

Description

metric_database_name

VARCHAR

Base de données qui stocke la fonction de métrique des données.

metric_schema_name

VARCHAR

Schéma qui stocke la fonction de métrique des données.

metric_name

VARCHAR

Nom de la fonction de métrique des données.

argument_signature

VARCHAR

Signature du type des arguments des métriques.

data_type

VARCHAR

Type de données renvoyé de la fonction de métrique des données.

ref_database_name

VARCHAR

Nom de base de données qui contient l’objet sur lequel la fonction de métrique des données est ajoutée.

ref_schema_name

VARCHAR

Nom de schéma qui contient l’objet sur lequel la fonction de métrique des données est ajoutée.

ref_entity_name

VARCHAR

Nom de la table ou de la vue sur laquelle la fonction de métrique des données est définie.

ref_entity_domain

VARCHAR

Type d’objet (table, vue) sur lequel la fonction de métrique des données est définie.

ref_arguments

ARRAY

Identifie les arguments de référence utilisés pour évaluer la règle.

ref_id

VARCHAR

Identificateur unique pour l’association de la fonction de métrique des données à la table ou à la vue.

schedule

VARCHAR

Planification d’exécution de la fonction de métrique des données sur la table ou la vue. La valeur de la planification est toujours la planification la plus récente et la plus efficace.

schedule_status

VARCHAR

Statut de l’association de métriques. Un des éléments suivants :

STARTED

L’association de métriques de données sur la table ou la vue est planifiée pour s’exécuter.

STARTED_AND_PENDING_SCHEDULE_UPDATE

Un changement a été apporté à la planification des mesures des données et la nouvelle planification n’est pas encore en vigueur. Autoriser Snowflake à mettre à jour la planification et à synchroniser la planification avec la fonction de métrique de données. Cette valeur est temporaire jusqu’à ce que les mises à jour soient terminées.

Si vous annulez la planification avec une commande ALTER TABLE ou ALTER VIEW, cette valeur reste jusqu’à ce qu’une nouvelle planification soit définie.

SUSPENDED

L’association de métriques de données sur la table ou la vue n’est pas planifiée pour s’exécuter. Cette valeur apparaît également lorsque le rôle utilisé qui appelle la fonction n’a pas le privilège OWNERSHIP sur la table.

Lorsque vous interrogez la vue Account Usage, les valeurs suivantes sont visibles par défaut ; cependant, lorsque vous appelez la fonction de table, vous devez utiliser un rôle avec le privilège OWNERSHIP sur la table pour voir ces valeurs :

SUSPENDED_TABLE_DOES_NOT_EXIST_OR_NOT_AUTHORIZED

Un des éléments suivants :

  • La table est supprimée.

  • Le schéma ou la base de données qui contient la table est supprimé.

  • Le schéma ou la base de données qui contient la table ne peut pas être résolu par le rôle de propriétaire de la table.

    « Résolu » signifie que le rôle qui appelle la fonction ne dispose pas des privilèges appropriés sur le schéma ou la base de données qui contient la table.

SUSPENDED_DATA_METRIC_FUNCTION_DOES_NOT_EXIST_OR_NOT_AUTHORIZED

Un des éléments suivants :

  • La DMF est supprimée.

  • Le schéma ou la base de données qui contient la DMF est supprimé.

  • Le schéma ou la base de données qui contient la DMF ne peut pas être résolu par le rôle de propriétaire de la table.

SUSPENDED_TABLE_COLUMN_DOES_NOT_EXIST_OR_NOT_AUTHORIZED

Un des éléments suivants :

  • La colonne de la table cible est supprimée.

  • Le schéma ou la base de données qui contient la colonne est supprimé.

  • Le schéma ou la base de données qui contient la colonne ne peut pas être résolu par le rôle de propriétaire de la table.

SUSPENDED_INSUFFICIENT_PRIVILEGE_TO_EXECUTE_DATA_METRIC_FUNCTION

Le rôle de propriétaire de la table ne dispose pas du privilège EXECUTE DATA METRIC FUNCTION.

SUSPENDED_ACTIVE_EVENT_TABLE_DOES_NOT_EXIST_OR_NOT_AUTHORIZED

La table d’événements n’est pas définie au niveau du compte.


Les résultats sont renvoyés en fonction des privilèges accordés au rôle qui exécute la requête.

Un rôle utilisé pour exécuter cette commande SQL doit avoir les privilèges suivants définis au minimum ainsi :

  • Tout privilège pris en charge sur la fonction de métrique des données.

    • Pour les DMFs système, le rôle peut se voir accorder le rôle de base de données DATA_METRIC_USER.

  • Privilège SELECT sur la table ou la vue.

Notes sur l’utilisation

  • Lors de l’appel d’une fonction de la table Information Schema, la session doit avoir un schéma INFORMATION_SCHEMA en cours d’utilisation ou la fonction doit être un nom d’objet complet. Pour plus de détails, voir Schéma d’information de Snowflake.

  • Choisissez une variante de syntaxe pour exécuter une requête. Le mélange d’arguments entraîne des erreurs et l’échec de la requête.

    Les valeurs d’argument de REF_ENTITY_NAME et de REF_ENTITY_DOMAIN doivent être incluses ensemble, sinon la requête échoue.

  • Snowflake renvoie des erreurs si le nom d’objet spécifié n’existe pas ou si l’opérateur de la requête n’est autorisé à afficher aucune fonction de métrique des données sur l’objet. Snowflake peut renvoyer un jeu de résultats d’associations de métriques de données si l’opérateur est autorisé à afficher un sous-ensemble des associations de métriques de données.

  • Les types d’objets non pris en charge, répertoriés comme REF_ENTITY_DOMAIN, tels que 'stream', renvoient des erreurs.

Exemples

Renvoie une ligne pour chaque objet (table ou vue) pour lequel la DMF nommée count_positive_numbers a été définie sur cette table ou cette vue :

USE DATABASE governance;
USE SCHEMA INFORMATION_SCHEMA;
SELECT *
  FROM TABLE(
    INFORMATION_SCHEMA.DATA_METRIC_FUNCTION_REFERENCES(
      METRIC_NAME => 'governance.dmfs.count_positive_numbers'
    )
  );
Copy

Renvoie une ligne pour chaque DMF affectée à la table nommée hr.tables.empl_info :

USE DATABASE governance;
USE SCHEMA INFORMATION_SCHEMA;
SELECT *
  FROM TABLE(
    INFORMATION_SCHEMA.DATA_METRIC_FUNCTION_REFERENCES(
      REF_ENTITY_NAME => 'hr.tables.empl_info',
      REF_ENTITY_DOMAIN => 'table'
    )
  );
Copy