- Categorias:
COPY_HISTORY¶
Esta função de tabela pode ser usada para consultar o histórico de carregamento de dados do Snowflake ao longo de várias dimensões dentro dos últimos 14 dias. A função retorna a atividade de carregamento tanto de instruções COPY INTO <tabela> como para carregamento contínuo de dados usando Snowpipe. A função de tabela evita a limitação da linha de 10.000 de Exibição LOAD_HISTORY. Os resultados podem ser filtrados usando predicados SQL.
Sintaxe¶
COPY_HISTORY(
TABLE_NAME => '<string>'
, START_TIME => <constant_expr>
[, END_TIME => <constant_expr> ] )
Argumentos¶
Obrigatório:
TABLE_NAME => 'string'
Uma cadeia de caracteres especificando um nome de tabela.
START_TIME => constant_expr
Carimbo de data/hora (no formato TIMESTAMP_LTZ), nos últimos 14 dias, marcando o início do intervalo de tempo para a recuperação de eventos de carregamento.
Opcional:
END_TIME => constant_expr
Carimbo de data/hora (no formato TIMESTAMP_LTZ), nos últimos 14 dias, marcando o fim do intervalo de tempo para a recuperação de eventos de carregamento.
Padrão: CURRENT_TIMESTAMP.
Notas de uso¶
Para carregamentos de dados em massa, esta função retorna resultados para uma função que tem qualquer privilégio na tabela de destino.
Para carregamentos de dados do Snowpipe, esta função retorna resultados somente para o proprietário do canal (ou seja, a função com o privilégio OWNERSHIP no canal) ou uma função com as seguintes permissões mínimas:
Privilégio
Objeto
Notas
USAGE
Banco de dados e esquema que armazenam o canal
MONITOR
Canal
Alternativamente, o privilégio global MONITOR EXECUTION é suportado.
SELECT
Tabela na definição do canal
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.
A função inclui apenas comandos COPY INTO que foram executados até a conclusão, com ou sem erros.
Remover ou recriar um objeto de tabela remove os dados históricos para carregamentos de dados em massa (instruções COPY INTO <table>) para dentro da tabela.
Remover ou recriar um objeto de canal remove os dados históricos para carregamentos de dados em massa do Snowpipe usando o canal.
Saída¶
A função retorna as seguintes colunas:
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
FILE_NAME |
TEXT |
Nome do arquivo de origem e caminho relativo ao arquivo. |
STAGE_LOCATION |
TEXT |
Nome do estágio em que se encontra o arquivo de origem. |
LAST_LOAD_TIME |
TIMESTAMP_LTZ |
Data e hora de quando o arquivo terminou de ser carregado. |
ROW_COUNT |
NUMBER |
Número de linhas carregadas a partir do arquivo de origem. |
ROW_PARSED |
NUMBER |
Número de linhas analisadas do arquivo origem; |
FILE_SIZE |
NUMBER |
Tamanho do arquivo de origem carregado (em bytes). |
FIRST_ERROR_MESSAGE |
TEXT |
Primeiro erro do arquivo de origem. |
FIRST_ERROR_LINE_NUMBER |
NUMBER |
Número da linha do primeiro erro. |
FIRST_ERROR_CHARACTER_POS |
NUMBER |
Posição do primeiro caractere de erro. |
FIRST_ERROR_COLUMN_NAME |
TEXT |
Nome da coluna do primeiro erro. |
ERROR_COUNT |
NUMBER |
Número de linhas de erro no arquivo de origem. |
ERROR_LIMIT |
NUMBER |
Se o número de erros atingir este limite, então abortar. |
STATUS |
TEXT |
Status: |
TABLE_CATALOG_NAME |
TEXT |
Nome do banco de dados em que se encontra a tabela de destino. |
TABLE_SCHEMA_NAME |
TEXT |
Nome do esquema em que se encontra a tabela de destino. |
TABLE_NAME |
TEXT |
Nome da tabela de destino. |
PIPE_CATALOG_NAME |
TEXT |
Nome do banco de dados em que se encontra o canal. |
PIPE_SCHEMA_NAME |
TEXT |
Nome do esquema em que se encontra o canal. |
PIPE_NAME |
TEXT |
Nome do canal que define os parâmetros de carregamento; |
PIPE_RECEIVED_TIME |
TIMESTAMP_LTZ |
Data e hora em que a solicitação INSERT para o arquivo carregado através do canal foi recebida; |
Exemplos¶
Recuperar detalhes sobre toda a atividade de carregamento na última hora:
select * from table(information_schema.copy_history(TABLE_NAME=>'MYTABLE', START_TIME=> DATEADD(hours, -1, CURRENT_TIMESTAMP())));