인프런 커뮤니티 질문&답변

janyjeon님의 프로필 이미지
janyjeon

작성한 질문수

Airflow 마스터 클래스

10초 단위로 실행 방법이 있을까요?

작성

·

249

0

10초 단위로 실행 방법이 있을까요?

답변 1

0

김현진님의 프로필 이미지
김현진
지식공유자

안녕하세요 janyjeon 님 !

 

음 10초마다 수행시키는 방법이 있긴 합니다.

dag 에서 schedule 항목에 cron 형태의 스케줄이 아닌 파이썬의 timedelta 라이브러리를 사용할수도 있어요.

from airflow import DAG
from datetime import timedelta
import pendulum

with DAG(
    dag_id="dag_name",
    schedule=timedelta(seconds=10),
    start_date=pendulum.datetime(2024, 1, 30, tz="Asia/Seoul"),
    catchup=False
)

 

일반적으로는 cron 형식의 스케줄을 더 많이 작성하기 때문에 timedelta 등의 방법은 강의에서 다루진 않았어요.

그러나 1분 미만의 스케줄은 스케줄러가 trigger를 놓칠 가능성이 있습니다.

그래서 10초마다 반드시 수행된다는 보장이 없기 때문에 비추천합니다.

 

혹시 어떤 작업 때문에 10초에 한번씩 수행하려고 하나요?

이런 경우 Kafka나 Spark Streaming 을 이용해서 스트리밍 처리하는게 더 이로울 것 같습니다.

 

janyjeon님의 프로필 이미지
janyjeon

작성한 질문수

질문하기