Dataform의 코드 수명 주기 소개

이 문서에서는 Dataform의 코드 수명 주기와 Dataform 내에서 컴파일 및 실행을 구성하는 방법을 설명합니다.

Dataform의 코드 수명 주기 정보

Dataform 코드 수명 주기는 다음 단계로 구성됩니다.

개발
Dataform 작업공간에서 SQL 워크플로를 개발합니다.
Compilation

Dataform은 작업공간의 SQL 워크플로 코드를 실시간으로 SQL로 컴파일하여 BigQuery에서 실행할 수 있는 작업공간의 컴파일 결과를 만듭니다. Dataform은 dataform.json 파일에 정의된 설정을 사용하여 컴파일 결과를 만듭니다.

Dataform은 인터넷 액세스 없이 V8 샌드박스 환경에서 코드를 컴파일합니다. 따라서 컴파일하는 동안 외부 API 호출과 같은 추가 작업을 수행할 수 없습니다.

실행

워크플로 호출에서 Dataform은 BigQuery에서 작업공간 컴파일 결과를 실행합니다.

Dataform 코드 수명 주기를 필요에 맞게 조정하려면 Dataform이 SQL 워크플로를 실행하는 위치와 방식에 영향을 주도록 컴파일 결과를 구성할 수 있습니다. 그런 다음 Dataform이 전체 SQL 워크플로 또는 선택한 요소를 실행하는 시기에 영향을 주도록 실행을 수동으로 트리거하거나 예약할 수 있습니다.

Dataform 컴파일 구성 방법

기본적으로 Dataform은 dataform.json 파일의 설정을 사용하여 컴파일 결과를 만듭니다. 기본 설정을 컴파일 재정의로 재정의하여 커스텀 컴파일 결과를 만들 수 있습니다. 그런 다음 커스텀 컴파일 결과의 실행을 수동으로 트리거하거나
실행을 예약할 수 있습니다.

Dataform은 컴파일 결과를 구성하는 다음 옵션을 제공합니다.

작업공간 컴파일 재정의
저장소의 모든 작업공간에 적용되는 컴파일 재정의를 구성할 수 있습니다. 작업공간 컴파일 재정의를 사용하여 격리된 개발 환경을 만들 수 있습니다.
출시 구성
출시 구성을 만들어 Dataform 저장소의 컴파일 결과를 만들기 위한 템플릿을 구성할 수 있습니다. 그런 다음 워크플로 구성을 만들어 선택한 출시 구성에서 생성된 컴파일 결과 실행을 예약할 수 있습니다.
Dataform API 컴파일 재정의
터미널에서 Dataform API 요청을 전달하여 컴파일 재정의로 단일 컴파일 결과를 만들고 실행할 수 있습니다.

작업공간 컴파일 재정의 구성

작업공간 컴파일 재정의를 사용하면 Dataform 저장소의 모든 작업공간에 대해 컴파일 재정의를 만들 수 있습니다. 저장소당 작업공간 컴파일 재정의 구성을 하나만 만들 수 있습니다.

작업공간 컴파일 재정의가 있는 저장소에서 작업공간의 실행을 수동으로 트리거하면 Dataform이 이러한 재정의를 작업공간의 컴파일 결과에 적용합니다.

다음 작업공간 컴파일 재정의를 구성할 수 있습니다.

  • Dataform이 작업공간의 콘텐츠를 실행하는 Google Cloud 프로젝트
  • 테이블 프리픽스
  • 스키마 서픽스

BigQuery의 작업공간 컴파일 결과를 동적 컴파일 재정의로 격리하여 작업공간 컴파일 재정의를 사용하여 격리된 개발 환경을 만들 수 있습니다. 동적 테이블 프리픽스 및 스키마 서픽스 컴파일 재정의에는 ${workspaceName} 변수가 포함됩니다. 작업공간에서 실행을 트리거하면 Dataform이 ${workspaceName} 변수를 현재 작업공간 이름으로 대체하여 작업공간에 고유한 컴파일 재정의를 만듭니다.

작업공간 컴파일 재정의로 생성된 컴파일 결과의 실행은 예약할 수 없습니다.

출시 구성 만들기

출시 구성을 사용하면 저장소의 컴파일 결과를 만들기 위한 설정 템플릿을 구성할 수 있습니다.

출시 구성에서는 dataform.json 설정의 컴파일 재정의, 컴파일 변수, 전체 저장소의 컴파일 결과 생성 빈도를 구성할 수 있습니다.

출시 구성에서 다음 컴파일 재정의를 구성할 수 있습니다.

  • Google Cloud 프로젝트
  • 테이블 프리픽스
  • 스키마 서픽스
  • 컴파일 변수

Dataform 저장소에는 개발 수명 주기의 각 단계에 하나씩 여러 개의 출시 구성을 만들어 격리된 저장소 컴파일 결과를 만들 수 있습니다.

그런 다음 선택한 출시 구성에서 생성된 컴파일 결과의 실행을 예약하는 워크플로 구성을 만들 수 있습니다.

선택한 출시 구성에서 컴파일 결과의 실행을 수동으로 트리거할 수도 있습니다.

Dataform API 컴파일 재정의로 단일 컴파일 결과 구성

터미널에서 Dataform API 요청을 전달하면 단일 컴파일 결과에 대해 컴파일 재정의를 구성할 수 있습니다.

compilationResults.create 요청에서 Dataform 작업공간 또는 지정된 Git comittish의 단일 컴파일 결과를 만들 수 있습니다.

compilationResults.create 요청의 CodeCompilationConfig 객체에서 컴파일 요청의 컴파일 재정의를 구성할 수 있습니다.

다음 Dataform API 컴파일 재정의를 구성할 수 있습니다.

  • Google Cloud 프로젝트
  • 테이블 프리픽스
  • 스키마 서픽스
  • 컴파일 변수

Dataform API 컴파일 재정의는 단일 컴파일 결과와 단일 실행에 적용됩니다. 이를 사용하여 Dataform 실행을 예약할 수 없습니다.

workflowInvocations.create 요청에서 컴파일 결과를 실행할 수 있습니다.

Dataform 실행을 구성하는 방법

Dataform은 실행을 구성하는 다음 옵션을 제공합니다.

작업공간에서 수동 실행
일정에 관계없이 Dataform 작업공간에서 SQL 워크플로 즉시 실행을 수동으로 트리거할 수 있습니다. SQL 워크플로에서 선택한 작업을 실행할 수 있습니다.
워크플로 구성
선택한 출시 구성에서 생성된 컴파일 결과 실행을 예약할 수 있습니다. 실행할 SQL 워크플로 작업을 선택하고 실행 빈도 및 시간대를 설정할 수 있습니다.

작업공간에서 즉시 실행 트리거

Dataform 작업공간에서는 일정과 관계없이 작업공간에서 SQL 워크플로를 수동으로 즉시 실행할 수 있습니다.

작업공간에서 SQL 워크플로의 다음 요소를 수동으로 실행할 수 있습니다.

저장소에 작업공간 컴파일 재정의가 포함된 경우 Dataform이 작업공간 컴파일 결과에 적용되는 컴파일 재정의를 확인할 수 있습니다.

워크플로 구성 만들기

워크플로 구성을 사용하면 선택한 출시 구성에서 컴파일 결과 실행을 예약할 수 있습니다. Dataform 저장소에 여러 워크플로 구성을 만들 수 있습니다.

워크플로 구성에서 다음 실행 설정을 구성할 수 있습니다.

  • 적용된 컴파일 출시 구성
  • 실행할 SQL 워크플로 작업 선택
  • 실행 일정 및 시간대

다음 중 실행할 SQL 워크플로 작업을 선택할 수 있습니다.

  • 모든 작업
  • 선택한 작업
  • 선택한 태그가 포함된 작업

그런 다음 워크플로 구성을 실행하는 동안 Dataform은 적용된 컴파일 결과에서 선택한 작업을 BigQuery에 배포합니다.

Dataform 출시 구성 및 워크플로 구성을 사용하면 추가 서비스에 의존하지 않고도 Dataform에서 컴파일을 구성하고 실행을 예약할 수 있습니다.

수명 주기 리소스 만료

Dataform은 특정 기간 동안의 컴파일 결과와 워크플로 호출을 저장합니다.

워크플로 호출 만료

워크플로 호출은 90일이 경과하거나 수동으로 삭제하면 만료됩니다.

워크플로 구성에서 구성에 의해 생성된 최근 워크플로 호출 목록을 볼 수 있습니다. 워크플로 구성에 의해 생성된 워크플로 호출이 만료되면 Dataform은 최근 호출 목록에서 해당 워크플로 호출을 삭제합니다.

컴파일 결과 만료

컴파일 결과 만료는 개발 작업공간, 출시 구성, 워크플로 호출 등 생성 방법에 따라 달라집니다.

Dataform 작업공간에서 SQL 워크플로를 개발하면 Dataform이 실시간으로 코드를 컴파일 결과로 컴파일하여 쿼리 유효성 검사를 제공합니다. 이 방법으로 생성된 컴파일 결과는 24시간 후 만료됩니다.

출시 구성에서는 최신 컴파일 결과가 라이브 컴파일 결과가 됩니다. 현재 실시간 컴파일 결과가 새 컴파일 결과로 바뀝니다. Dataform은 새 컴파일 결과로 대체될 때까지 라이브 컴파일 결과를 유지합니다. 대체 컴파일 결과는 최대 24시간 후에 만료됩니다.

Dataform은 출시 구성의 세부정보 페이지에 있는 이전 컴파일 결과 목록에서 만료된 컴파일 결과를 삭제합니다.

Dataform은 워크플로 호출이 만료되거나 삭제된 후 최대 24시간 동안 워크플로 호출 전체 기간 동안 워크플로 호출로 생성된 컴파일 결과를 보관합니다.

다음 단계