Tutorial 2: Crie e gerencie tarefas¶
Introdução¶
Neste tutorial, você aprenderá como enviar consultas REST para criar e gerenciar tarefas.
Pré-requisitos¶
Nota
Se você já concluiu as etapas em Configuração comum para tutoriais das APIs REST do Snowflake, pode pular esses pré-requisitos e prosseguir para a primeira etapa deste tutorial.
Antes de iniciar este tutorial, é necessário concluir as instruções de configuração comuns, que incluem as seguintes etapas:
Importe as coleções Postman das APIs REST Snowflake.
Autentique sua conexão configurando o token de portador no Postman.
Após concluir esses pré-requisitos, você estará pronto para começar a usar a API.
Criação de um warehouse¶
É possível usar a Warehouse API para criar um warehouse Snowflake.
Para criar um warehouse extra pequeno (xsmall
) nomeado demo_wh
, envie a seguinte solicitação POST ao ponto de extremidade /api/v2/warehouses
, conforme mostrado:
Na guia Params, defina o parâmetro
createMode
comoerrorIfExists
, o que garante que você não substitua involuntariamente um warehouse existente.Na guia Body, adicione o seguinte código ao corpo da solicitação, conforme mostrado.
{ "name": "demo_wh", "warehouse_size": "xsmall" }
Para obter mais informações, consulte a Referência da Snowflake Warehouse API.
Criação de uma tarefa¶
É possível usar a Task API para criar uma tarefa Snowflake.
Para criar uma tarefa, envie uma solicitação POST ao ponto de extremidade /api/v2/databases/{database}/schemas/{schema}/tasks
, conforme mostrado:
Na guia Params, defina o parâmetro
createMode
comoorReplace
e defina as variáveis de caminhodatabase
eschema
para usar as variáveis de ambiente ({{default_db}}
e{{default_schema}}
) que você definiu nos tutoriais Configuração comum para tutoriais das APIs REST do Snowflake.Na guia Body, adicione o corpo de solicitação, conforme mostrado.
{ "name": "{{test_task_name}}", "definition": "SELECT 1", "warehouse": "{{default_wh}}", "schedule": {"minutes": 2, "schedule_type": "MINUTES_TYPE"}, "config": {"consecteture": false, "sed_9": 61393640, "doloref3": -85761000}, "commnent": "comment", "session_parameters": { "TIMEZONE": "America/Los Angeles", "AUTOMCOMMIT": true }, "error_integration": null, "user_task_managed_initial_warehouse_size": null, "predecessors": null, "task_auto_retry_attempts": 3, "user_task_timeout_ms": 10000, "suspend_task_after_num_failures": 3, "condition": true, "allow_overlapping_execution": false }
Para obter mais informações, consulte a Referência da Snowflake Task API.
Como buscar uma tarefa¶
É possível usar a Task API para buscar uma tarefa Snowflake.
Para obter detalhes sobre uma tarefa, envie uma solicitação GET ao ponto de extremidade /api/v2/databases/{database}/schemas/{schema}/tasks
, conforme mostrado:
Na guia Params, defina as variáveis de caminho
database
,schema
ename
para usar as variáveis de ambiente ({{default_db}}
,{{default_schema}}
e{{test_task_name}}
) que você definiu nos tutoriais Configuração comum para tutoriais das APIs REST do Snowflake.
Para obter mais informações, consulte a Referência da Snowflake Task API.
Listagem de tarefas¶
É possível usar a Task API para listar tarefas Snowflake.
Para listar todas as tarefas disponíveis, envie uma solicitação GET ao ponto de extremidade /api/v2/databases/{database}/schemas/{schema}/tasks
, conforme mostrado:
Na guia Params, defina o parâmetro
rootOnly
comofalse
e defina as variáveis de caminhodatabase
eschema
para usar as variáveis de ambiente ({{default_db}}
e{{default_schema}}
) que você definiu nos tutoriais Configuração comum para tutoriais das APIs REST do Snowflake.
Para obter mais informações, consulte a Referência da Snowflake Task API.
Exclusão de uma tarefa¶
É possível usar a Task API para excluir uma tarefa Snowflake.
Para excluir uma tarefa, envie uma solicitação DELETE ao ponto de extremidade /api/v2/databases/{database}/schemas/{schema}/tasks/{name}
, conforme mostrado:
Na guia Params, defina as variáveis de caminho
database
,schema
ename
para usar as variáveis de ambiente ({{default_db}}
,{{default_schema}}
e{{test_task_name}}
) que você definiu nos tutoriais Configuração comum para tutoriais das APIs REST do Snowflake.
Para obter mais informações, consulte a Referência da Snowflake Task API.
Execução de uma tarefa¶
É possível usar a Task API para executar uma tarefa Snowflake.
Para executar uma tarefa que não será repetida se falhar, envie uma solicitação POST ao ponto de extremidade /api/v2/databases/{database}/schemas/{schema}/tasks/{name}:execute
, conforme mostrado:
Na guia Params, defina o parâmetro
retryLast
comofalse
e defina as variáveis de caminhodatabase
eschema
para usar as variáveis de ambiente ({{default_db}}
e{{default_schema}}
) que você definiu nos tutoriais Configuração comum para tutoriais das APIs REST do Snowflake.
Para obter mais informações, consulte a Referência da Snowflake Task API.
Como completar gráficos¶
Nota
Este tutorial pressupõe que você tenha um warehouse padrão definido.
É possível usar a Task API para retornar detalhes de execuções de gráfico concluídas.
Para retornar detalhes de execuções de gráfico concluídas para uma tarefa, envie uma solicitação GET ao ponto de extremidade /api/v2/databases/{database}/schemas/{schema}/tasks/{name}:execute
, conforme mostrado:
Na guia Params, faça o seguinte:
Defina os parâmetros de consulta
resultLimit
eerrorOnly
como5
efalse
, respectivamente.Defina as variáveis de caminho codenowrap:
database
,schema
ename
para usar as variáveis de ambiente ({{default_db}}
,{{default_schema}}
e{{test_task_name}}
) que você definiu nos tutoriais Configuração comum para tutoriais das APIs REST do Snowflake.
Para obter mais informações, consulte a Referência da Snowflake Task API.
Criação de uma tarefa filho¶
É possível usar a Task API para criar uma tarefa filho para uma tarefa Snowflake existente.
Para criar uma tarefa filho, envie uma solicitação POST ao ponto de extremidade /api/v2/databases/{database}/schemas/{schema}/tasks
, conforme mostrado:
Na guia Params, defina o parâmetro
createMode
comoorReplace
e defina as variáveis de caminhodatabase
eschema
para usar as variáveis de ambiente ({{default_db}}
e{{default_schema}}
) que você definiu nos tutoriais Configuração comum para tutoriais das APIs REST do Snowflake.Na guia Body, adicione o corpo de solicitação, conforme mostrado. O parâmetro
name
especifica o nome da tarefa filho epredecessors
identifica o nome da tarefa pai.{ "name": "test_child_task", "definition": "SELECT 1", "warehouse": "{{default_wh}}", "predecessors": "{{test_task_name}}" }
Para obter mais informações, consulte a Referência da Snowflake Task API.
Como buscar tarefas dependentes de uma tarefa pai¶
Nota
Este tutorial pressupõe que você tenha um warehouse padrão definido.
É possível usar a Task API para buscar uma tarefa filho (dependente) da tarefa Snowflake.
Para obter detalhes sobre uma tarefa filho (dependente), envie uma solicitação GET ao ponto de extremidade /api/v2/databases/{database}/schemas/{schema}/tasks/{name}/dependents
, conforme mostrado:
Na guia Params, defina o parâmetro de consulta recursivo
recursive
comotrue
, e defina as variáveis de caminhodatabase
,schema
ename
para usar as variáveis de ambiente ({{default_db}}
,{{default_schema}}
e{{test_task_name}}
) que você definiu nos tutoriais Configuração comum para tutoriais das APIs REST do Snowflake.Observe que o resultado inclui a tarefa pai e sua tarefa filho.
Para obter mais informações, consulte a Referência da Snowflake Task API.
Qual é o próximo passo?¶
Parabéns! Neste tutorial, você aprendeu os fundamentos para gerenciar recursos de tarefa e warehouse do Snowflake usando o Snowflake REST APIs.
Resumo¶
Ao longo do processo, você concluiu as seguintes etapas:
Crie um warehouse.
Crie uma tarefa.
Busque uma tarefa.
Exclua uma tarefa.
Execute uma tarefa.
Compete gráficos.
Crie uma tarefa filho.
Busque tarefas dependentes de uma tarefa pai.