35

Spark 작업 연동하기

Day 4: Airflow 오케스트레이션

학습 목표

SparkSubmitOperator를 사용할 수 있다 Spark 작업의 설정을 관리할 수 있다

미션: Spark 변환 DAG

Spark 작업을 Airflow에서 실행하는 DAG를 만드세요.

Spark 실행 방식

  1. SparkSubmitOperator (권장)

    • spark-submit 명령어 래핑
    • Spark Cluster에 작업 제출
  2. PythonOperator + PySpark

    • Airflow Worker에서 직접 실행
    • 소규모 작업에 적합
  3. KubernetesPodOperator

    • K8s 환경에서 별도 Pod으로 실행
    • 리소스 격리

요구사항

  1. Spark 설정

    • Driver/Executor 메모리
    • Delta Lake 패키지
  2. 작업 정의

    • staging_transform (Spark)
    • warehouse_transform (Spark)
  3. 의존성

    • staging → warehouse 순서
에디터 로딩 중...
힌트 보기
  • SparkSubmitOperator는 spark-submit 명령어를 래핑한다
  • {{ ds }}는 Jinja 템플릿으로 실행 날짜가 치환된다
  • Airflow Variable로 민감한 설정을 관리할 수 있다
  • conn_id는 Airflow Connection에 설정된 Spark 연결 정보를 사용한다
정답 보기
에디터 로딩 중...