• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 엔지니어링

  • 해결 여부

    미해결

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

24.01.30 21:38 작성 조회수 138

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 을 이용해서 스트리밍 처리하는게 더 이로울 것 같습니다.