Finn.ian
article thumbnail
Published 2023. 7. 2. 23:17
NiFi Cron 설정하기 Data Engineering/ELT

NiFi Cron은 NiFi에서 작업을 정기적으로 실행하기 위한 기능이다.

 

 

01. Apache NiFi Cron 기능

NiFi는 Apache Software Foundation에서 개발한 엔터프라이즈급 데이터 처리 플랫폼으로 NiFi Cron를 사용하면 특정 시간에 또는 특정 시간 간격으로 작업을 실행할 수 있다. 아래는 NiFi Cron 기능이다.

  • 작업을 특정 시간에 실행
  • 작업을 특정 시간 간격으로 실행
  • 작업을 특정 주기 동안 실행
  • 작업을 특정 조건이 충족될 때 실행

 

02. Apache NiFi Cron 사용법

NiFi Cron를 사용하려면 다음과 같이 진행하면 된다.

(작성된 버전은 1.12.1로, 버전마다 상이할 수 있기 때문에 참고만 하길 바란다.)

 

1. NiFi UI의 좌측 상단 Processor 버튼 클릭하기

2. 원하는 프로세스 클릭하기

3. 프로세스의 Name 입력하기

4. 프로세스 구성 페이지에서 스케줄러 탭을 클릭하기

5. 스케줄러 유형을 Cron 로 선택하기 (① 선택 → ② Drop Box 클릭)

6. 스케줄러 설정 구성하기

7. 설정된 프로세스 저장하기

 

03. Cron 스케줄러

Cron 스케줄러는 UNIX Cron과 유사한 방식으로 작업을 실행되지만, 일반적인 리눅스 크론과 설정이 약간 상이하다.

 

  • 리눅스 Cron 설정

리눅스 Cron 수행 명령어

 

  • NiFi Cron 설정

NiFi Cron 수행 명령어

 

위의 명령어와 같이 Cron 표현식이 사뭇 다른 것을 알 수 있는데 리눅스 Cron 명령어에 초(sec)가 추가된 것이 NiFi Cron 명령이다. 이를 활용해 작업이 실행될 시간을 지정할 수 있다.

 

스케줄링이 어렵다면 아래 이미지를 첨부하니 참고해서 보면 될 것 같다.

Apache NiFi User Guide Cron

 

예를 들어, 다음 Cron 표현식은 매일 오전 9시에 작업을 실행한다고 가정하면 아래와 같이 표기하면 된다.

0 9 * * *

 

 

예시1. 매일 오후 1시에 프로세서가 실행되도록 예약할 경우, 아래와 같이 입력하면 된다.

0 0 13 * * ?​

 

예시2. 매주 월요일부터 금요일까지 오후 2시 20분에 프로세서가 실행되도록 하는 경우는 아래와 같다.

0 20 14 ? * MON-FRI​

 

예시3. 2011년에서 2017년 사이에 매월 마지막 금요일 오전 10시 15분에 실행하는 방법은 아래와 같다.

0 15 10 ? * 6L 2011-2017

 

 

이처럼 NiFi Cron을 사용하여 NiFi에서 작업을 정기적으로 실행할 수 있습니다. 이를 통해 자동화된 데이터 처리 작업을 수행하고 작업을 일정에 맞게 실행할 수 있다.

 

[참고자료]

profile

Finn.ian

@Finn_

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

검색 태그