- Categorias:
DYNAMIC_TABLE_REFRESH_HISTORY¶
Esta função de tabela retorna informações sobre cada atualização (concluída e em execução) de tabelas dinâmicas.
Esta função de tabela retorna todas as atualizações que estão em andamento, bem como todas as atualizações que têm uma DATA_TIMESTAMP dentro de 7 dias a partir da hora atual.
Sintaxe¶
DYNAMIC_TABLE_REFRESH_HISTORY(
  [ DATA_TIMESTAMP_START => <constant_expr> ]
  [ , DATA_TIMESTAMP_END => <constant_expr> ]
  [ , RESULT_LIMIT => <integer> ]
  [ , NAME => '<string>' ]
  [ , NAME_PREFIX => '<string>' ]
  [ , ERROR_ONLY => { TRUE | FALSE } ]
)
Argumentos¶
Todos os argumentos são opcionais. Se nenhum argumento for fornecido, serão retornadas 100 atualizações de todas as tabelas dinâmicas da conta.
- DATA_TIMESTAMP_START => constant_expr, .- DATA_TIMESTAMP_END => constant_expr
- Intervalo de tempo (em formato TIMESTAMP_LTZ) durante o qual ocorreram as atualizações. - Se nem uma versão inicial nem uma versão final forem especificadas, o intervalo padrão será o dia anterior. 
- Se uma versão final não for especificada, CURRENT_TIMESTAMP será usada como o fim do intervalo. 
- Se uma versão inicial não for especificada, o intervalo começará 1 dia antes do início do DATE_TIMESTAMP_END. 
 
- RESULT_LIMIT => integer
- Um número especificando o número máximo de linhas retornadas pela função. Se o número de linhas correspondentes for maior que este limite, as atualizações que foram concluídas mais recente (ou aquelas que ainda estão em execução) são retornadas até o limite especificado. - Para aplicar um filtro nos resultados, especifique também um valor limite RESULT_LIMIT suficientemente grande para que o filtro seja aplicado em todas as tabelas dinâmicas. - Intervalo: - 1a- 10000- Padrão: - 100.
- NAME => string
- O nome de uma tabela dinâmica. - Os nomes devem estar entre aspas simples e não diferenciam maiúsculas de minúsculas. - Você pode especificar o nome não qualificado ( - dynamic_table_name), o nome parcialmente qualificado (- schema_name.dynamic_table_name) ou o nome totalmente qualificado (- database_name.schema_name.dynamic_table_name).- Para obter mais informações sobre a resolução de nomes de objetos, consulte Resolução de nome de objeto. - A função retorna as atualizações para esta tabela. 
- NAME_PREFIX => string
- Um prefixo para tabelas dinâmicas. - Os prefixos de nome devem estar entre aspas simples e não diferenciam maiúsculas de minúsculas. - A função retorna atualizações para tabelas com nomes que começam com esse prefixo. - Você pode usar esse argumento para retornar as atualizações para tabelas dinâmicas em um banco de dados ou esquema específico. 
- ERROR_ONLY => TRUE | FALSE
- Quando definida como TRUE, esta função retorna apenas atualizações que falharam ou foram canceladas. 
Saída¶
A função retorna as seguintes colunas.
Para exibir essas colunas, é necessário usar uma função com o privilégio MONITOR. Para obter mais informações, consulte Privilégios para visualizar os metadados de uma tabela dinâmica.
| Nome da coluna | Tipo de dados | Descrição | 
|---|---|---|
| NAME | TEXT | Nome da tabela dinâmica. | 
| SCHEMA_NAME | TEXT | Nome do esquema que contém a tabela dinâmica. | 
| DATABASE_NAME | TEXT | Nome do banco de dados que contém a tabela dinâmica. | 
| STATE | TEXT | Status da atualização da tabela dinâmica. O status pode ser uma das seguintes opções: 
 | 
| STATE_CODE | TEXT | Código que representa o estado atual da atualização. | 
| STATE_MESSAGE | TEXT | Descrição do estado atual da atualização. | 
| QUERY_ID | TEXT | ID da instrução SQL que produziu os resultados para a tabela dinâmica. | 
| DATA_TIMESTAMP | TIMESTAMP_LTZ | Carimbo de data/hora transacional quando a atualização foi avaliada. (Isso pode ocorrer um pouco antes da hora real da atualização.) Todos os dados, em objetos base, que chegaram antes desse carimbo de data/hora estão atualmente incluídos na tabela dinâmica. | 
| REFRESH_START_TIME | TIMESTAMP_LTZ | Hora em que o trabalho de atualização foi iniciado. | 
| REFRESH_END_TIME | TIMESTAMP_LTZ | Hora em que a atualização foi concluída. | 
| COMPLETION_TARGET | TIMESTAMP_LTZ | Hora em que esta atualização deve ser concluída para manter o atraso sob o parâmetro TARGET_LAG para a tabela dinâmica. Isto é igual a DATA_TIMESTAMP da última atualização + TARGET_LAG. | 
| QUALIFIED_NAME | TEXT | Nome totalmente qualificado da tabela dinâmica conforme aparece no gráfico de tabelas dinâmicas. Você pode usar isso para juntar a saída com a saída da função DYNAMIC_TABLE_GRAPH_HISTORY. | 
| LAST_COMPLETED_DEPENDENCY | OBJECT | Contém as seguintes propriedades: 
 | 
| STATISTICS | OBJECT | Contém as seguintes propriedades: 
 | 
| REFRESH_ACTION | TEXT | Uma das opções: 
 | 
| REFRESH_TRIGGER | TEXT | Uma das opções: 
 | 
| TARGET_LAG_SEC | NUMBER | Descreve o valor da meta de atraso das tabelas dinâmicas no momento em que ocorreu a atualização. | 
| GRAPH_HISTORY_VALID_FROM | TIMESTAMP_NTZ | Codifica o carimbo de data/hora VALID_FROM da função de tabela DYNAMIC_TABLE_GRAPH_HISTORY quando a atualização ocorreu para esclarecer a qual versão de uma tabela dinâmica uma atualização específica corresponde. Este valor também pode ser NULL se a tabela dinâmica correspondente não tiver sido criada. | 
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 o nome da função deve ser totalmente qualificado. Para obter mais detalhes, consulte Snowflake Information Schema. 
Exemplos¶
Recupere as atualizações que falharam ou foram canceladas:
SELECT name, state, state_code, state_message, query_id, data_timestamp, refresh_start_time, refresh_end_time FROM TABLE ( INFORMATION_SCHEMA.DYNAMIC_TABLE_REFRESH_HISTORY ( NAME_PREFIX => 'MYDB.MYSCHEMA.', ERROR_ONLY => TRUE ) ) ORDER BY name, data_timestamp;