Categorias:

Funções do sistema (Informações do sistema)

SYSTEM$LOCATE_DBT_ARCHIVE

Retorna o URL do qual você pode recuperar artefatos de execução de dbt compactados para um projeto dbt especificado.

Use essa função com a DBT_PROJECT_EXECUTION_HISTORY para acessar artefatos e logs de dbt programaticamente.

Sintaxe

SYSTEM$LOCATE_DBT_ARCHIVE ( '<query_id>' )
Copy

Argumentos

query_id

O ID da consulta da execução do projeto dbt que tem os arquivos você deseja localizar.

Retornos

Essa função retorna o URL do qual você pode recuperar o conteúdo compactado dos resultados de um projeto dbt especificado.

Para obter mais informações e exemplos, consulte Acesso programático a artefatos e logs do dbt.

Requisitos de controle de acesso

Esta função inclui apenas execuções de espaços de trabalho e projetos dbt nos quais você tem os seguintes privilégios:

  • OWNERSHIP ou USAGE nos espaços de trabalho

  • OWNERSHIP, USAGE ou MONITOR nos projetos dbt

O privilégio USAGE no banco de dados e no esquema pai é necessário para executar operações em qualquer objeto de um esquema. Observe que uma função com privilégio concedido em um esquema permite que essa função resolva o esquema. Por exemplo, uma função com privilégio CREATE concedido em um esquema pode criar objetos nesse esquema sem também ter USAGE concedido nesse esquema.

Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.

Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.

Notas de uso

  • Esta função do sistema funciona somente com objetos de projeto dbt; ela não está disponível para espaços de trabalho.

  • IDs de consulta gerados a partir de CREATE DBT PROJECT ou ALTER DBT PROJECT … ADD VERSION não são compatíveis com esta função do sistema.

  • Consultas diretas do conteúdo do arquivo (por exemplo, Exemplos de consulta) não são compatíveis.

  • Se query_id for NULL ou não for uma execução dbt, você receberá um erro.

  • Os resultados do projeto dbt ficam disponíveis por até 14 dias.

  • Os arquivos podem ficar indisponíveis se uma execução expirar, for cancelada ou falhar antes de serem carregados. Nesses casos, as execuções aparecem como UNHANDLED ERROR no histórico do dbt.

  • Você não pode usar essa função para obter logs de execuções em andamento, pois o arquivo de logs só fica disponível após a conclusão da execução.

Exemplos

O exemplo a seguir retorna o URL snow:// dos artefatos compactados (por exemplo, dbt_artifacts.zip) para a execução especificada.

Você pode usar esse URL com GET para baixar o arquivo ZIP (ou COPY FILES para movê-la para sua própria área de preparação). Para o caminho da pasta em vez do ZIP, use SYSTEM$LOCATE_DBT_ARTIFACTS.

SELECT SYSTEM$LOCATE_DBT_ARCHIVE($latest_query_id);
Copy

Para obter mais informações, consulte Acesso programático a artefatos e logs do dbt.