자습서 2: 작업 만들기 및 관리

소개

이 자습서에서는 작업을 생성하고 관리하기 위해 REST 쿼리를 제출하는 방법을 배웁니다.

전제 조건

참고

Snowflake REST APIs 자습서의 일반 설정 의 단계를 이미 완료했다면 이러한 사전 요구 사항을 건너뛰고 이 자습서의 첫 번째 단계로 진행할 수 있습니다.

이 자습서를 시작하기 전에 다음 단계가 포함된 공통 설정 지침을 완료해야 합니다.

  • Snowflake REST APIs Postman 컬렉션을 가져옵니다.

  • Postman에서 전달자 토큰을 설정하여 연결을 인증합니다.

이러한 필수 요건을 완료하면 API를 사용할 준비가 된 것입니다.

웨어하우스 만들기

웨어하우스 API를 사용하여 Snowflake 웨어하우스를 생성할 수 있습니다.

이름이 demo_wh 인 Extra Small(xsmall) 웨어하우스를 생성하려면 그림과 같이 다음 POST 요청을 /api/v2/warehouses 엔드포인트로 보냅니다.

  • Params 탭에서 기존 웨어하우스를 실수로 덮어쓰지 않도록 createMode 매개 변수를 errorIfExists 로 설정합니다.

    ../../../_images/create-warehouse-params.png
  • Body 탭에서 그림과 같이 요청 본문에 다음 코드를 추가합니다.

    {
      "name": "demo_wh",
      "warehouse_size": "xsmall"
    }
    
    Copy
    ../../../_images/create-warehouse1.png

자세한 내용은 Snowflake Warehouse API 참조 섹션을 참조하십시오.

작업 만들기

Task API를 사용하여 Snowflake 작업을 생성할 수 있습니다.

작업을 생성하려면 다음과 같이 POST 요청을 /api/v2/databases/{database}/schemas/{schema}/tasks 엔드포인트로 보냅니다.

  • Params 탭에서 createMode 매개 변수를 orReplace 로 설정하고 databaseschema 경로 변수를 설정하여 Snowflake REST APIs 자습서의 일반 설정 자습서에서 설정한 환경 변수({{default_db}}{{default_schema}})를 사용합니다.

    ../../../_images/create-task-params.png
  • Body 탭에서 그림과 같이 요청 본문을 추가합니다.

    {
      "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
    }
    
    Copy
    ../../../_images/create-task1.png

자세한 내용은 Snowflake Task API 참조 섹션을 참조하십시오.

작업 가져오기

Task API를 사용하여 Snowflake 작업을 가져올 수 있습니다.

작업 세부 정보를 가져오려면 다음과 같이 GET 요청을 /api/v2/databases/{database}/schemas/{schema}/tasks 엔드포인트로 보냅니다.

  • Params 탭에서 database, schemaname 경로 변수를 설정하여 Snowflake REST APIs 자습서의 일반 설정 자습서에서 설정한 환경 변수({{default_db}}, {{default_schema}}{{test_task_name}})를 사용합니다.

    ../../../_images/fetch-task1.png

자세한 내용은 Snowflake Task API 참조 섹션을 참조하십시오.

작업 나열하기

Task API를 사용하여 Snowflake 작업을 나열할 수 있습니다.

사용할 수 있는 모든 작업을 나열하려면 다음과 같이 GET 요청을 /api/v2/databases/{database}/schemas/{schema}/tasks 엔드포인트로 보냅니다.

  • Params 탭에서 rootOnly 매개 변수를 false 로 설정하고 databaseschema 경로 변수를 설정하여 Snowflake REST APIs 자습서의 일반 설정 자습서에서 설정한 환경 변수({{default_db}}{{default_schema}})를 사용합니다.

    ../../../_images/list-tasks1.png

자세한 내용은 Snowflake Task API 참조 섹션을 참조하십시오.

작업 삭제

Task API를 사용하여 Snowflake 작업을 삭제할 수 있습니다.

작업을 삭제하려면 다음과 같이 DELETE 요청을 /api/v2/databases/{database}/schemas/{schema}/tasks/{name} 엔드포인트로 보냅니다.

  • Params 탭에서 database, schemaname 경로 변수를 설정하여 Snowflake REST APIs 자습서의 일반 설정 자습서에서 설정한 환경 변수({{default_db}}, {{default_schema}}{{test_task_name}})를 사용합니다.

    ../../../_images/delete-task.png

자세한 내용은 Snowflake Task API 참조 섹션을 참조하십시오.

작업 실행

Task API를 사용하여 Snowflake 작업을 실행할 수 있습니다.

실패해도 재시도하지 않는 작업을 실행하려면 다음과 같이 POST 요청을 /api/v2/databases/{database}/schemas/{schema}/tasks/{name}:execute 엔드포인트로 보냅니다.

  • Params 탭에서 retryLast 매개 변수를 false 로 설정하고 databaseschema 경로 변수를 설정하여 Snowflake REST APIs 자습서의 일반 설정 자습서에서 설정한 환경 변수({{default_db}}{{default_schema}})를 사용합니다.

    ../../../_images/execute-task.png

자세한 내용은 Snowflake Task API 참조 섹션을 참조하십시오.

완전한 그래프

참고

이 자습서에서는 기본 웨어하우스가 정의되어 있다고 가정합니다.

Task API를 사용하여 완료된 그래프 실행에 대한 세부 정보를 반환할 수 있습니다.

작업의 완료된 그래프 실행에 대한 세부 정보를 반환하려면 다음과 같이 GET 요청을 /api/v2/databases/{database}/schemas/{schema}/tasks/{name}:execute 엔드포인트로 보냅니다.

  • Params 탭에서 다음을 수행합니다.

    • resultLimiterrorOnly 쿼리 매개 변수를 각각 5false 로 설정합니다.

    • database, schemaname 경로 변수를 설정하여 Snowflake REST APIs 자습서의 일반 설정 자습서에서 설정한 환경 변수({{default_db}}, {{default_schema}}{{test_task_name}})를 사용합니다.

    ../../../_images/complete-graphs.png

자세한 내용은 Snowflake Task API 참조 섹션을 참조하십시오.

하위 작업 만들기

Task API를 사용하여 기존 Snowflake 작업에 대한 하위 작업을 생성할 수 있습니다.

하위 작업을 생성하려면 다음과 같이 POST 요청을 /api/v2/databases/{database}/schemas/{schema}/tasks 엔드포인트로 보냅니다.

  • Params 탭에서 createMode 매개 변수를 orReplace 로 설정하고 databaseschema 경로 변수를 설정하여 Snowflake REST APIs 자습서의 일반 설정 자습서에서 설정한 환경 변수({{default_db}}{{default_schema}})를 사용합니다.

    ../../../_images/create-task-params.png
  • Body 탭에서 그림과 같이 요청 본문을 추가합니다. name 매개 변수는 하위 작업의 이름을 지정하고 predecessors 는 상위 작업의 이름을 식별합니다.

    {
      "name": "test_child_task",
      "definition": "SELECT 1",
      "warehouse": "{{default_wh}}",
      "predecessors": "{{test_task_name}}"
    }
    
    Copy
    ../../../_images/create-child-task.png

자세한 내용은 Snowflake Task API 참조 섹션을 참조하십시오.

상위 작업의 종속 작업 가져오기

참고

이 자습서에서는 기본 웨어하우스가 정의되어 있다고 가정합니다.

Task API를 사용하여 Snowflake 작업의 하위(종속) 작업을 가져올 수 있습니다.

하위(종속) 작업 세부 정보를 가져오려면 다음과 같이 GET 요청을 /api/v2/databases/{database}/schemas/{schema}/tasks/{name}/dependents 엔드포인트로 보냅니다.

  • Params 탭에서 recursive 쿼리 매개 변수를 true 로 설정하고 database, schemaname 경로 변수를 설정하여 Snowflake REST APIs 자습서의 일반 설정 자습서에서 설정한 환경 변수({{default_db}}, {{default_schema}}{{test_task_name}})를 사용합니다.

    ../../../_images/get-task-dependents.png

    결과에는 상위 작업과 하위 작업이 모두 포함됩니다.

자세한 내용은 Snowflake Task API 참조 섹션을 참조하십시오.

다음에는 무엇을 해야 합니까?

축하합니다! 이 자습서에서는 Snowflake REST APIs 를 사용하여 Snowflake 웨어하우스와 작업 리소스를 관리하는 기본 사항에 대해 알아봤습니다.

요약

이 과정에서 다음 단계를 완료했습니다.

  • 웨어하우스를 생성합니다.

  • 작업을 생성합니다.

  • 작업을 가져옵니다.

  • 작업을 삭제합니다.

  • 작업을 실행합니다.

  • 그래프를 작성합니다.

  • 하위 작업을 생성합니다.

  • 상위 작업의 종속 작업을 가져옵니다.