Categorias:

Information Schema , Funções de tabela

DATA_METRIC_FUNCTION_REFERENCES

Retorna uma linha para cada objeto que tenha a função de métrica de dados especificada atribuída ao objeto ou retorna uma linha para cada função de métrica de dados atribuída ao objeto especificado.

Consulte também:

Exibição DATA_METRIC_FUNCTION_REFERENCES (Exibição Account Usage)

Sintaxe

DATA_METRIC_FUNCTION_REFERENCES(
  METRIC_NAME => '<string>' )

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

Argumentos

METRIC_NAME => 'string'

Especifica o nome da função de métrica de dados.

  • O nome completo da métrica de dados deve ser colocado entre aspas simples.

  • Se o nome da métrica de dados diferenciar letras maiúsculas e minúsculas ou incluir quaisquer caracteres ou espaços especiais, as aspas duplas são necessárias para processar o caso/caracteres. As aspas duplas devem ser colocadas dentro de aspas simples, como '"<metric_name>"'.

REF_ENTITY_NAME => 'string'

O nome do objeto, como table_name, view_name ou external_table_name, no qual a função de métricas de dados é adicionada.

  • O nome completo do objeto deve ser delimitado por aspas simples.

  • Se o nome da objeto diferenciar letras maiúsculas e minúsculas ou incluir quaisquer caracteres ou espaços especiais, as aspas duplas são necessárias para processar o caso/caracteres. As aspas duplas devem ser colocadas dentro de aspas simples, como '"<table_name>"'.

REF_ENTITY_DOMAIN => 'string'

O tipo de objeto, como tabela ou exibição materializada, no qual a função de métrica de dados é adicionada.

Use 'TABLE' para todos os tipos de tabela suportados.

Retornos

A função retorna as seguintes colunas:

Coluna

Tipo de dados

Descrição

metric_database_name

VARCHAR

O banco de dados que armazena a função de métrica de dados.

metric_schema_name

VARCHAR

O esquema que armazena a função de métrica de dados.

metric_name

VARCHAR

O nome da função de métrica de dados.

argument_signature

VARCHAR

A assinatura de tipo dos argumentos de métricas.

data_type

VARCHAR

O tipo de dados de retorno da função de métrica de dados.

ref_database_name

VARCHAR

O nome do banco de dados que contém o objeto no qual a função de métrica de dados é adicionada.

ref_schema_name

VARCHAR

O nome do esquema que contém o objeto no qual a função de métrica de dados é adicionada.

ref_entity_name

VARCHAR

O nome da tabela ou exibição na qual a função de métrica de dados está definida.

ref_entity_domain

VARCHAR

O tipo de objeto (tabela, exibição) no qual a função de métrica de dados é definida.

ref_arguments

ARRAY

Identifica os argumentos de referência usados para avaliar a regra.

ref_id

VARCHAR

Um identificador exclusivo para a associação da função de métrica de dados à tabela ou exibição.

schedule

VARCHAR

O agendamento para executar a função de métrica de dados na tabela ou exibição. O valor do cronograma é sempre o cronograma mais recente e efetivo.

schedule_status

VARCHAR

O status da associação de métricas. Um dos seguintes:

STARTED

A associação de métricas de dados na tabela ou exibição está agendada para ser executada.

STARTED_AND_PENDING_SCHEDULE_UPDATE

Ocorreu uma alteração no cronograma de métricas de dados e o novo cronograma ainda não entrou em vigor. Permitir que o Snowflake atualize o cronograma e sincronize-o com a função de métrica de dados. Este valor é temporário até que as atualizações sejam concluídas.

Se você desmarcar um cronograma com um comando ALTER TABLE ou ALTER VIEW, esse valor permanecerá até que um novo cronograma seja definido.

SUSPENDED

A associação de métricas de dados na tabela ou exibição não está agendada para ser executada. Este valor também ocorre quando a função em uso que chama a função não tem o privilégio OWNERSHIP na tabela.

Ao consultar a exibição Account Usage, os seguintes valores são visíveis por padrão; no entanto, ao chamar a função de tabela, você deve usar uma função com o privilégio OWNERSHIP na tabela para ver esses valores:

SUSPENDED_TABLE_DOES_NOT_EXIST_OR_NOT_AUTHORIZED

Um dos seguintes:

  • A tabela é descartada.

  • O esquema ou banco de dados que contém a tabela é descartado

  • O esquema ou banco de dados que contém a tabela não pode ser resolvido pela função de proprietário da tabela.

    “Resolvido” significa que a função que chama a função não tem os privilégios apropriados no esquema ou banco de dados que contém a tabela.

SUSPENDED_DATA_METRIC_FUNCTION_DOES_NOT_EXIST_OR_NOT_AUTHORIZED

Um dos seguintes:

  • A DMF é descartada.

  • O esquema ou banco de dados que contém a DMF é descartada.

  • O esquema ou banco de dados que contém a DMF não pode ser resolvido pela função de proprietário da tabela.

SUSPENDED_TABLE_COLUMN_DOES_NOT_EXIST_OR_NOT_AUTHORIZED

Um dos seguintes:

  • A coluna da tabela de destino é descartada.

  • O esquema ou banco de dados que contém a coluna é descartado.

  • O esquema ou banco de dados que contém a coluna não pode ser resolvido pela função de proprietário da tabela.

SUSPENDED_INSUFFICIENT_PRIVILEGE_TO_EXECUTE_DATA_METRIC_FUNCTION

A função de proprietário da tabela não tem o privilégio EXECUTE DATA METRIC FUNCTION.

SUSPENDED_ACTIVE_EVENT_TABLE_DOES_NOT_EXIST_OR_NOT_AUTHORIZED

A tabela de eventos não é definida no nível da conta.


Os resultados são retornados com base nos privilégios concedidos à função que executa a consulta:

Uma função usada para executar este comando SQL deve ter os seguintes privilégios no mínimo:

  • Qualquer privilégio suportado na função de métrica de dados.

    • Para DMFs do sistema, a função pode ser concedida à função de banco de dados DATA_METRIC_USER.

  • O privilégio SELECT na tabela ou exibição.

Notas de uso

  • Ao chamar uma função de tabela do Information Schema, a sessão deve ter um esquema INFORMATION_SCHEMA em uso ou a função deve usar o nome do objeto totalmente qualificado. Para obter mais detalhes, consulte Snowflake Information Schema.

  • Escolha uma variação de sintaxe para executar uma consulta. A mistura de argumentos resulta em erros e falhas nas consultas.

    Os valores de argumento para REF_ENTITY_NAME e REF_ENTITY_DOMAIN devem ser incluídos juntos, caso contrário a consulta falha.

  • O Snowflake retornará erros se o nome do objeto especificado não existir ou se o operador da consulta não estiver autorizado a visualizar qualquer função de métrica de dados no objeto. O Snowflake pode retornar um conjunto de resultados de associações de métricas de dados se o operador tiver permissão para visualizar um subconjunto das associações de métricas de dados.

  • Tipos de objetos não suportados listados como REF_ENTITY_DOMAIN, como 'stream', retornam erros.

Exemplos

Retorna uma linha para cada objeto (tabela ou exibição) que possua a DMF nomeada count_positive_numbers definida naquela tabela ou exibição:

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

Retorne uma linha para cada DMF atribuída à tabela nomeada 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