스케줄링
파이프라인을 수동으로 실행하는 것 외에, 정기적인 스케줄을 설정하여 자동으로 실행되도록 구성할 수 있습니다. D.Hub은 Cron 기반 스케줄과 이벤트 기반 트리거를 지원합니다.
Cron 스케줄 설정
설정 방법
- 워크플로우 편집기 상단 툴바에서 Settings (톱니바퀴 아이콘)을 클릭합니다.
- Schedule 탭을 선택합니다.
- Cron 표현식을 입력하거나, 프리셋 옵션을 선택합니다.
- Save를 클릭하여 스케줄을 등록합니다.
스케줄이 등록되면 파이프라인 상태가 Scheduled로 변경됩니다.
Cron 표현식 구조
Cron 표현식은 5개의 필드로 구성됩니다:
┌───────────── 분 (0-59)
│ ┌───────────── 시 (0-23)
│ │ ┌───────────── 일 (1-31)
│ │ │ ┌───────────── 월 (1-12)
│ │ │ │ ┌───────────── 요일 (0-6, 일요일=0)
│ │ │ │ │
* * * * *
주요 Cron 표현식 예시
| 표현식 | 설명 |
|---|---|
0 0 * * * | 매일 자정 (00:00) |
0 * * * * | 매시간 정각 |
0 9 * * 1-5 | 월~금 오전 9시 |
0 9,18 * * * | 매일 오전 9시, 오후 6시 |
*/30 * * * * | 30분마다 |
0 0 1 * * | 매월 1일 자정 |
0 6 * * 0 | 매주 일요일 오전 6시 |
0 0 1 1,4,7,10 * | 분기 첫째 날 자정 |
프리셋 옵션
Cron 표현식을 직접 작성하지 않고 다음 프리셋을 사용할 수 있습니다:
| 프리셋 | Cron 표현식 | 설명 |
|---|---|---|
| Hourly | 0 * * * * | 매시간 |
| Daily | 0 0 * * * | 매일 자정 |
| Weekly | 0 0 * * 1 | 매주 월요일 자정 |
| Monthly | 0 0 1 * * | 매월 1일 자정 |
정보
Cron 표현식의 시간대(Timezone)는 서버 설정 기준(UTC)입니다. 한국 시간(KST)으로 설정하려면 UTC 기준에서 9시간을 빼서 입력하세요. 예를 들어, KST 오전 9시 실행은 0 0 * * * (UTC 00:00)입니다.
이벤트 트리거
Cron 스케줄 외에, 특정 이벤트가 발생하면 파이프라인을 자동 실행하는 이벤트 기반 트리거를 설정할 수 있습니다.
Kafka 이벤트 트리거
Kafka 토픽에 새 메시지가 도착하면 파이프라인을 실행합니다.
| 설정 항목 | 설명 |
|---|---|
| 토픽 | 구독할 Kafka 토픽 이름 |
| Consumer Group | 메시지 소비 그룹 ID |
| 조건 필터 | 메시지 내용 기반 실행 조건 (선택 사항) |
서버리스 이벤트 트리거
서버리스 이벤트 시스템을 통해 CloudEvents 형식의 이벤트를 수신하여 파이프라인을 실행합니다.
| 설정 항목 | 설명 |
|---|---|
| 이벤트 타입 | 수신할 CloudEvent 타입 |
| 소스 필터 | 이벤트 소스 기반 필터링 |
| 속성 필터 | 이벤트 속성 기반 실행 조건 |
팁
이벤트 트리거는 실시간 데이터 처리 파이프라인에 적합합니다. 배치 처리가 주 목적이라면 Cron 스케줄을 사용하세요.
스케줄 활성화/비활성화
활성화
- Settings → Schedule 탭에서 스케줄을 설정합니다.
- Schedule Enabled 토글을 켭니다.
- Save를 클릭합니다.
- 파이프라인 상태가 Scheduled로 변경됩니다.
비활성화
스케줄을 삭제하지 않고 일시적으로 중단하려면:
- Settings → Schedule 탭을 엽니다.
- Schedule Enabled 토글을 끕니다.
- Save를 클릭합니다.
- 파이프라인 상태가 Idle로 변경됩니다.
경고
스케줄을 비활성화해도 현재 실행 중인 배치는 중단되지 않습니다. 실행 중인 배치를 중단하려면 편집기에서 Stop 버튼을 사용하세요.
스케줄 모니터링
파이프라인 목록 화면에서 스케줄 상태를 확인할 수 있습니다:
| 정보 | 설명 |
|---|---|
| 상태 배지 | Scheduled 상태의 파이프라인에 스케줄 아이콘이 표시 |
| 다음 실행 시각 | 다음 예정 실행 시각을 확인 |
| 실행 이력 | 최근 스케줄 실행 결과(성공/실패) 확인 |