- 인쇄
- PDF
커스텀 변수 정보
- 인쇄
- PDF
개요
カスタム変数とは、転送設定・データマート定義・dbtジョブ設定などの設定項目に埋め込むことができる変数です。
カスタム変数の値は、ジョブの実行時に展開されます。
이용 사례
예를 들어, 다음과 같은 목적으로 활용됩니다.
- 전송원 측의 SQL 문장에 삽입합니다.
작업 실행 날짜와 시간을 확장하여 전송 대상 행을 필터링할 수 있습니다.
- 전송 대상 테이블 이름에 접미사 형태로 삽입합니다.
작업 실행 날짜와 시간을 확장하여 샤딩 테이블을 생성할 수 있습니다.
워크플로우 정의에서는 커스텀 변수가 내장된 작업에 대해 여러 값을 순차적으로 전개해 가상의 루프 처리를 할 수 있습니다.
자세한 내용은 사용자 지정 변수 루프 실행을 참고하세요.
- 전송원 측에서 정의한 사용자 정의 변수는 전송 대상 측의 설정 항목에 포함할 수 없습니다. 마찬가지로, 전송처 측에서 정의한 사용자 정의 변수는 전송처 측의 설정 항목에 임베드할 수 없습니다.
- 전송원 측과 전송 대상 측에 동일한 이름의 사용자 정의 변수가 정의되어 있는 경우, 다음과 같은 경우 전송 대상 측의 사용자 정의 변수가 우선합니다. 이 경우, 전송 대상 측의 사용자 지정 변수의 전개 값이 전송 소스 측의 사용자 지정 변수로도 전개됩니다.
- 워크플로우 루프 실행 시
- 전송 설정 STEP2의 컬럼 정의 기본값
- TROCCO API를 이용한 작업 실행
- 변수별 값을 지정한 작업 실행
사용자 정의 변수 유형
문자열 사용자 지정 변수
작업 실행 시 문자열을 확장할 수 있습니다.
정의할 때 고정된 문자열을 설정합니다.
문자열 사용자 정의 변수는 작업 실행 시 값이 확장(덮어쓰기)되지 않고 고정된 문자열이 그대로 사용되는 경우가 있습니다.
예를 들어, 다음과 같은 경우에 고정된 문자열이 사용됩니다.
- 작업 실행 시 선택하는 사용자 지정 변수 전개 방법에서****현재 시간 기준 전개 또는 지정 날짜 및 시간 기준 전개를 선택한 경우
- 작업이 스케줄에 따라 실행된 경우
- 워크플로우 태스크의 사용자 지정 변수로 루프 실행에서****기간(상대 지정)으로 루프를 선택한 경우
시간 및 날짜 사용자 지정 변수
사용자 지정 변수에 값을 전개할 때 기준 날짜 및 시간 대비 상대적인 시간을 전개할 수 있습니다.
여기서 지정한 시간대를 기준으로 전개되는 날짜와 시간이 정해지며, 지정한 날짜 형식으로 값이 전개됩니다.
예를 들어, 아래 사례에서 기준일시가 '2024년 04월 01일 00시 00분 00초(한국 시간)'인 경우, 2024-03-31 00:00:00:00
이라는 값으로 전개된다.
참고로 시간/날짜(큐잉 시 )와 시간/날짜(실행 시) 는 커스텀 변수에 값을 전개할 때 기준 날짜에 차이가 있습니다.
자세한 내용은 후술하는 기준일시를 참고하시기 바랍니다.
커스텀 변수 전개 방법
작업을 실행할 때 다음 세 가지 중에서 선택할 수 있습니다.
- 현재 시간을 기준으로 전개: 작업 실행 시작 시간을 기준 시간으로 설정합니다.
- 지정한 날짜 및 시간을 기준으로 전개: 기준 날짜를 수동으로 정의할 수 있습니다.
- 변수별 값 지정: 사용자 지정 변수에 전개할 값을 수동으로 정의할 수 있습니다.
또한, 스케줄 설정에 의해 작업이 실행되는 경우, 작업 실행 시작 시간이 기준 날짜 및 시간이 됩니다.
사양에 대한 추가 정보
기준일시에 대하여
시간/날짜(큐잉 시 )와 시간/날짜(실행 시) 는 커스텀 변수에 값을 전개할 때 기준 날짜에 차이가 있다.
- 시간/날짜(실행시간) 의 경우:
- 해당 작업의 시작일자를 기준으로 값이 전개됩니다.
- 시간/날짜(큐잉 시) 의 경우:
- 해당 작업의 실행이 트리거된 날짜와 시간을 기준으로 값이 확장됩니다.
워크플로우 작업을 실행할 때, 큐잉 시점의 시간/날짜와실행 시점의 시간/날짜와기준 날짜의 차이는 워크플로우 작업 실행 시 두드러지게 나타납니다.
- 시간/날짜 (대기 중일 때)
- 워크플로우 정의 내에 존재하는 시간/날짜(큐잉 시 )가 포함된 작업(자식 워크플로우에 정의된 작업 포함)이 있는 경우, 해당 기준 날짜/시간은 모두 워크플로우 작업이 처음 실행을 시작한 날짜/시간으로 설정됩니다.
- 또한, 워크플로우 작업이 자동 재시도된 결과 실행되는 작업의 기준 날짜는 워크플로우 작업이 처음 실행을 시작한 날짜가 됩니다.
- 시간/날짜 (실행 시)
- 한편, 워크플로우 정의에 시간/날짜(실행시간) 가 포함된 작업이 있는 경우, 해당 작업의 기준 날짜는 해당 작업의 작업이 실제로 실행을 시작한 날짜와 시간으로 설정됩니다.
또한, 스케줄 설정을 사용하여 작업을 실행하는 운영의 경우, 시간/날짜(큐잉 시) 를 사용하는 것을 권장합니다.
만약 작업이 실패하여 다음 날 이후 재실행할 경우, 이전 작업의 기준 날짜 및 시간으로 사용자 지정 변수에 값을 확장할 수 있기 때문입니다.
워크플로우 작업에서 사용자 지정 변수의 배포 사양 지정
사용자 지정 변수 루프 실행을 설정한 경우
사용자 정의 변수 루프 실행에서 루프 대상이 된 사용자 정의 변수에는 루프 실행 측의 설정에 따라 값이 전개됩니다.
즉, 워크플로우 작업 실행 시 선택한 사용자 지정 변수의 전개 방식은 루프 실행 측의 값 전개 설정에 의해 덮어씌워집니다.
워크플로우 정의 내에 워크플로우 정의가 포함된 경우
전자를 부모 워크플로우, 후자를 자식 워크플로우로 정의합니다.
자식 워크플로우를 사용자 지정 변수로 루프 실행하는 경우, 루프 대상인 사용자 지정 변수의 전개 값은 자식 워크플로우 실행 시 계승됩니다.
즉, 사용자 정의 변수의 전개 값은 자식 워크플로우 작업 내에 있는 같은 이름의 사용자 정의 변수로 전개됩니다.