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

A operação em um objeto de esquema requer pelo menos um privilégio no banco de dados pai e um privilégio no esquema pai.

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.