Skip to main content
이 문서는 데이터 엔지니어링 섹션의 일부입니다.

왜 태스크 유형을 이해해야 하는가?

Lakeflow Jobs는 다양한 워크로드를 하나의 워크플로로 통합합니다. Notebook, SQL, Python Script, dbt, SDP 파이프라인 등 10가지 태스크 유형을 제공하며, 각 유형은 특정 용도에 최적화되어 있습니다. 올바른 태스크 유형을 선택하면 개발 생산성과 운영 효율성이 크게 향상됩니다.

10가지 태스크 유형 총정리


Notebook 태스크

가장 자주 사용되는 태스크 유형입니다. Databricks 노트북을 실행하며, Python, Scala, SQL, R 언어를 지원합니다.

Python Script 태스크

.py 파일을 직접 실행합니다. Notebook 태스크와 달리 순수 Python 스크립트 를 실행하므로, CI/CD 파이프라인과의 연동이 쉽습니다.

SQL 태스크

SQL 쿼리를 SQL Warehouse에서 실행합니다. 데이터 검증, 집계 테이블 갱신, 리포트 생성에 적합합니다.

dbt 태스크

dbt Core 프로젝트를 Databricks SQL Warehouse에서 실행합니다.
💡 dbt 태스크의 장점: dbt 프로젝트를 Databricks 워크플로에 네이티브로 통합할 수 있습니다. dbt Cloud 없이도 스케줄링, 모니터링, 재시도가 가능합니다.

Pipeline (SDP) 태스크

SDP 파이프라인의 업데이트를 트리거합니다. 파이프라인 ID만 지정하면 됩니다.

JAR 태스크

Java/Scala로 작성된 JAR 파일을 실행합니다.

Spark Submit 태스크

spark-submit 명령을 직접 실행합니다. 기존 Spark 애플리케이션을 그대로 사용할 수 있습니다.
⚠️ Spark Submit은 레거시 호환을 위한 것입니다. 새로운 워크로드에는 Notebook 또는 Python Script 태스크를 권장합니다.

Run Job 태스크

다른 Job을 트리거하여 크로스 팀/프로젝트 오케스트레이션을 구현합니다.

현업 사례: 태스크 유형 잘못 선택해서 3배 비용을 지불한 경험

🔥 실전 경험담 한 고객사의 데이터 엔지니어가 단순 SQL 집계 작업(일별 매출 요약 테이블 생성)을 Notebook 태스크로 구현 했습니다. 노트북에서 PySpark로 GROUP BY 집계를 수행한 후 Delta 테이블에 저장하는 간단한 로직이었습니다. 문제는 이 Notebook 태스크가 매번 Job Cluster를 새로 생성 한다는 점이었습니다.
  • Notebook 태스크 비용: Job Cluster 시작(약 5분) + 실행(약 3분) + 종료 = 총 8분, 4 Worker 노드 사용
  • SQL 태스크로 전환 후: 이미 실행 중인 SQL Warehouse에서 즉시 실행, 약 30초 만에 완료
같은 결과를 내는 작업인데, Notebook 태스크는 Job Cluster 시작 시간과 노드 비용 때문에 SQL 태스크 대비 약 3배의 비용 이 발생했습니다. 이 고객사에는 비슷한 패턴의 태스크가 50개 이상 있었고, 전체를 SQL 태스크로 전환한 후 월 컴퓨트 비용이 약 $2,000 절감 되었습니다.

각 유형별 실전 비용 비교

아래는 “일별 매출 집계(100만 행 → 집계 결과 1,000행)“라는 동일한 작업을 각 태스크 유형으로 실행했을 때의 비용 비교입니다.
💡 현업 팁: SQL로 해결 가능한 작업은 무조건 SQL 태스크를 사용하세요. SQL Warehouse가 이미 실행 중이라면 추가 비용이 거의 없습니다. “이 작업이 꼭 PySpark여야 하는가?”를 항상 먼저 질문하세요.

Notebook vs Python Script: 언제 무엇을 쓸까?

현업에서 가장 많이 받는 질문 중 하나입니다. 두 태스크 유형 모두 Python 코드를 실행하지만, 용도가 다릅니다.

선택 기준 의사결정 트리

질문: “이 코드를 어떻게 개발하고 관리할 것인가?”
🔥 현업에서는: 프로토타이핑은 Notebook → 안정화되면 Python Script로 전환 하는 패턴이 가장 많습니다. 처음부터 Python Script로 시작하면 개발 속도가 느리고, 끝까지 Notebook으로 가면 테스트와 코드 리뷰가 어렵습니다. 실제로 성숙한 조직에서는 프로덕션 Job의 70% 이상을 Python Wheel 태스크로 운영합니다.

태스크 유형 선택 가이드

자주 하는 실수와 해결 방법


실습: 다양한 태스크 유형을 활용한 워크플로


정리


참고 링크