NiFi에서 스케쥴링탭에 Cron 표현식에 대한 설명입니다.
포로세서의 스케쥴링탭
위 이미지가 스케쥴링 탭의 기본 구성입니다.
구성된 속성으로는 Scheduling Strategy, Concurrent Tasks, Excution, Run Schedule, Run Duration이 있습니다
- Scheduling Strategy (일정 관리 전략) : 프로세서를 일정에 따라 처리하는 데 사용된 전략
- Concurrent Tasks (동시에 진행되는 작업) : 프로세서에 동시에 예약되어야 하는 작업의 수
- Excution (실행) : 클러스터링될 때 이 프로세서가 실행될 노드
- Run Schedule (실행 계획) : 작업 실행 사이에 경과해야 하는 시간
주요 속성인 Scheduling Strategy을 살펴보면 아래와 같습니다.
여기에서 일반적으로 CRON driven으로 작성하게 되며 식의 구성과 예시문은 아래와 같습니다.
CRON driven
초 분 시간 날짜 월 요일
필드 | 유효 값 |
초 (Seconds) | 0-59 |
분 (Minutes) | 0-59 |
시간 (Hours) | 0-23 |
날짜 (Day of Month) | 1-31 |
월 (Month) | 1-12 or JAN-DEC |
요일 (Day of Week) | 1-7 or SUN-SAT |
연도 (Year) (optional) | empty, 1970-2099 |
각 필드는 공백으로 구분되며, 특정 값을 지정하거나 '*'를 사용하여 해당 필드의 모든 값으로 설정할 수 있습니다.
유효한 특수문자 설명
* 해당 필드에 대해 모든 값이 유효함을 나타냅니다
? 구체적인 값이 지정되지 않았음을 나타냅니다. 이 특수문자는 월의 일자와 주의 요일 필드에서 유효합니다
L 월의 Day of Week 값 중 하나 뒤에 L을 추가하여 해당 요일이 해당 월에서 마지막으로 발생하는 것을 나타냅니다
예를 들어 1L은 해당 월의 마지막 일요일을 의미합니다
예시문
0 */30 * * * ? 매 30분에 실행
15 0 * * * ? 매 시간 15분에 실행
0 0 9 ? * MON 매주 월요일 오전 9시에 실행
0 3 0 1 * ? 매월 1일 새벽 3시에 실행
Timer driven
기본모드인 타이머 기반실행입니다. 정기적인 간격으로 실행되도록 예약 할 수 있습니다.
프로세서가 실행되는 간격은 '실행 일정' 옵션에 의해 정의됩니다.
예시문
1 second
5 mins
0 sec
0 sec
0 mins
0 days
이상으로 배치작업 설정을 위한 Cron 표현식 작성 방법에 대해 알아보았습니다.
'빅데이터 > Apache Nifi' 카테고리의 다른 글
Nifi Database 04. Processor 설명 (0) | 2023.12.21 |
---|---|
Nifi Database 01. 동기화 업무 공유 및 완성본 확인 (0) | 2023.12.20 |
Nifi Database 05. 데이터 포맷 설명 (0) | 2023.12.18 |
Nifi Database 02. Connection Pool 설정 (1) | 2023.12.18 |
Apache NiFi 표현 언어 가이드(3) (0) | 2023.12.14 |