Categorias:

Information Schema , Funções de tabela

PIPE_USAGE_HISTORY

Esta função de tabela pode ser usada para consultar o histórico dos dados carregados nas tabelas do Snowflake usando o Snowpipe dentro de um intervalo de datas especificado. A função retorna o histórico de dados carregados e créditos faturados para toda a sua conta Snowflake.

Nota

Esta função retorna a atividade do canal dos últimos 14 dias.

Sintaxe

PIPE_USAGE_HISTORY(
      [ DATE_RANGE_START => <constant_expr> ]
      [, DATE_RANGE_END => <constant_expr> ]
      [, PIPE_NAME => '<string>' ] )
Copy

Argumentos

Todos os argumentos são opcionais.

DATE_RANGE_START => constant_expr , . DATE_RANGE_END => constant_expr

O intervalo de data/hora, dentro das últimas 2 semanas, para o qual se pode recuperar o histórico de carregamento de dados:

  • Se uma data final não for especificada, então CURRENT_DATE é usada como o fim do intervalo.

  • Se uma data de início não for especificada, então o intervalo começa 10 minutos antes do início de DATE_RANGE_END (ou seja, o padrão é mostrar os 10 minutos anteriores do histórico de carregamento de dados). Por exemplo, se DATE_RANGE_END for CURRENT_DATE, então o padrão DATE_RANGE_START é 11:50 PM no dia anterior.

O histórico é exibido em incrementos de 5 minutos, 1 hora ou 24 horas (dependendo da extensão da faixa especificada).

Se o intervalo estiver fora dos últimos 15 dias, um erro é retornado.

PIPE_NAME => string

Um cadeia de caracteres especificando um canal. Somente os carregamentos de dados que utilizam o canal especificado são retornados.

Se um nome de canal não for especificado, então a coluna PIPE_NAME nos resultados exibirá NULL. Cada linha inclui os totais para todos os canais em uso dentro do intervalo de tempo.

Notas de uso

  • Retorna resultados apenas para a função ACCOUNTADMIN ou qualquer função que tenha sido explicitamente concedido o privilégio global MONITOR USAGE.

  • 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.

  • Ocasionalmente, os créditos do Snowflake podem ser consumidos pelo processo de compactação e manutenção dos dados. Por exemplo, os resultados devolvidos podem mostrar que você consumiu alguns créditos com 0 BYTES_INSERTED e 0 FILES_INSERTED. Isto significa que seus dados não estão sendo carregados, mas o processo de compactação e manutenção dos dados consumiu alguns créditos.

  • O Snowflake cobra pelas notificações de atualização automática em tabelas externas e tabelas de diretório em estágios externos a uma taxa equivalente à taxa do arquivo Snowpipe. Você pode estimar as cobranças incorridas por sua tabela externa e tabela de diretório em relação às notificações de atualização automática, consultando a função PIPE_USAGE_HISTORY ou examinando o Account Usage Exibição PIPE_USAGE_HISTORY. Note que os canais de atualização automática serão listados sob um nome de canal NULL. Você também pode visualizar o histórico de notificação de atualização automática de sua tabela externa no nível da tabela/nível de estágio de forma granular, usando a função de tabela AUTO_REFRESH_REGISTRATION_HISTORY do Information Schema.

    Para evitar cobranças por notificações de atualização automática, faça uma atualização manual das tabelas externas e tabelas de diretório. Para tabelas externas, a instrução ALTER EXTERNAL TABLE <nome> REFRESH … pode ser usada para sincronizar manualmente sua tabela externa com o armazenamento externo. Para tabelas de diretório, a instrução ALTER STAGE <nome> REFRESH … pode ser usada para sincronizar manualmente o diretório com o armazenamento externo.

Saída

A função retorna as seguintes colunas:

Nome da coluna

Tipo de dados

Descrição

START_TIME

TIMESTAMP_LTZ

Início do intervalo de tempo especificado em que ocorreram os carregamentos de dados.

END_TIME

TIMESTAMP_LTZ

Fim do intervalo de tempo especificado em que ocorreram os carregamentos de dados.

PIPE_NAME

TEXT

Nome do canal utilizado para um carregamento de dados. Exibe NULL se nenhum nome de canal estiver especificado na consulta. Cada linha inclui os totais para todos os canais em uso dentro do intervalo de tempo.

CREDITS_USED

TEXT

Número de créditos faturados para carregamentos de dados do Snowpipe durante o intervalo START_TIME e END_TIME.

BYTES_INSERTED

NUMBER

Número de bytes carregados durante o intervalo START_TIME e END_TIME.

FILES_INSERTED

NUMBER

Número de arquivos carregados durante o intervalo START_TIME e END_TIME.

Exemplos

Recuperar o histórico de carregamento de dados por um intervalo de 30 minutos, em períodos de 5 minutos, para sua conta:

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>to_timestamp_tz('2017-10-24 12:00:00.000 -0700'),
    date_range_end=>to_timestamp_tz('2017-10-24 12:30:00.000 -0700')));
Copy

Recuperar o histórico de carregamento de dados das últimas 12 horas, em períodos de 1 hora, para sua conta:

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>dateadd('hour',-12,current_timestamp()),
    pipe_name=>'mydb.public.mypipe'));
Copy

Recuperar o histórico de carregamento de dados dos últimos 14 dias, em períodos de 1 dia, para sua conta:

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>dateadd('day',-14,current_date()),
    date_range_end=>current_date()));
Copy

Recuperar o histórico de carregamento de dados dos últimos 14 dias, em períodos de 1 dia, para um canal especificado em sua conta:

select *
  from table(information_schema.pipe_usage_history(
    date_range_start=>dateadd('day',-14,current_date()),
    date_range_end=>current_date(),
    pipe_name=>'mydb.public.mypipe'));
Copy