다음을 통해 공유


작업 매개 변수화

이 문서에서는 작업 및 작업과 함께 매개 변수를 사용하는 방법에 대한 개요를 제공합니다.

다음은 작업에 대한 매개 변수를 이해하기 위한 기본 개념입니다.

매개 변수로 무엇을 할 수 있나요?

다음을 포함하여 고급 사용 사례에 대한 작업 및 작업에 매개 변수를 추가합니다.

  • 코드 자산에 확장 가능한 논리를 추가합니다.
  • 실행을 조건부로 지정합니다.
  • 여러 태스크에서 일반적인 매개 변수를 참조합니다.
  • 다른 작업의 한 작업에서 생성된 정보를 사용합니다.
  • 작업 실행에서 메타데이터 및 상태 정보를 참조합니다.

작업 매개 변수와 작업 매개 변수의 차이점은 무엇인가요?

작업 매개 변수는 작업 수준에서 정의된 키-값 쌍입니다. 다른 매개 변수를 사용하여 지금 실행하거나 REST API를 사용하여 작업 실행을 트리거할 때 작업 매개 변수에 대한 기본 설정을 재정의할 수 있습니다. 작업 매개 변수는 키-값 매개 변수를 사용하는 작업으로 푸시다운됩니다. 다른 작업은 동적 값 참조를 사용하여 작업 매개 변수를 참조할 수 있습니다.

작업 매개 변수는 작업 수준에서 정의된 JSON 배열의 키-값 쌍입니다. 각 작업 유형은 구성된 코드 자산에 태스크 값을 다르게 전달합니다. 예를 들어 Notebook 작업은 dbutils.widgets 하위 모듈을 사용하고 Python 스크립트는 명령줄에서 호출되는 것처럼 값을 인수로 스크립트에 전달합니다. 다운스트림 작업은 동적 값 참조를 사용하여 업스트림 태스크에서 작업 매개 변수를 참조할 수 있습니다.

참고 항목

일부 작업에는 전용 매개 변수 필드가 없지만 다른 필드 내에서 작업 값 또는 동적 값 참조에 대한 참조를 허용합니다. 매개 변수가 있는 dbt 명령의 예제If/else 태스크를 사용하여 작업에 분기 논리 추가를 참조하세요.

동적 값을 사용하여 워크플로 빌드

정적 값으로 설정된 작업 매개 변수는 작업 정의를 업데이트해야만 재정의할 수 있습니다. 작업 매개 변수에 정적 값을 설정하는 것은 기본값을 구성하는 것일 뿐이며, 다른 매개 변수를 사용하여 지금 실행하거나 REST API를 사용하여 작업 실행을 트리거할 때 재정의할 수 있습니다.

다음과 같은 패턴을 구현하기 위해 작업 매개 변수를 정의할 때 동적 값 참조를 사용합니다.

  • 작업 매개 변수를 한 작업에 대해 output_table, 다른 작업에 대해 input_table로 사용합니다.
  • Notebook 쿼리의 출력을 목록으로 캡처하고 For each 태스크에서 반복합니다.
  • If/else 조건 태스크를 사용하여 처리된 레코드 수에 따라 포크 논리를 만듭니다.
  • 다른 태스크의 매개 변수를 참조하세요.

동적 값 참조란?을 참조하세요.