반응형
Databricks의 컴퓨팅 리소스 종류와 워크로드별로 적합한 클러스터 선택 방법
전체 구조
Databricks Compute는 크게 두 가지로 나뉩니다:
Databricks Compute
├── Classic Compute (클래식 컴퓨트)
│ ├── All-Purpose Clusters
│ ├── Job Clusters
│ ├── Instance Pools
│ └── SQL Warehouses (Pro 타입)
└── Serverless Compute (서버리스 컴퓨트)
├── Notebooks / Jobs / Pipelines용 서버리스
└── SQL Warehouses (Serverless 타입)
1. Classic Compute (클래식 컴퓨트)
클라우드 제공업체가 관리하는 유연하고 커스터마이징 가능한 인프라
All-Purpose Clusters vs Job Clusters
구분 All-Purpose Cluster Job Cluster
| 용도 | 대화형 노트북 개발, ad-hoc 분석 | 자동화된 Job/파이프라인 실행 (Lakeflow Jobs, Declarative ETL) |
| 생성 방식 | 워크스페이스 UI, CLI, REST API로 수동 생성 | Job 스케줄러가 자동 생성 |
| 종료 방식 | 수동 종료 또는 비활성 시간 기준 자동 종료 설정 | Job/파이프라인 완료 즉시 자동 종료 |
| 비용 | 상대적으로 비쌈 | DBU 비용이 더 저렴 → Job/파이프라인에는 Job Cluster 권장 |
인스턴스 패밀리 선택 (워크로드별)
인스턴스 타입 적합한 워크로드
| Memory-optimized | 셔플/스필이 많은 작업, Spark 메모리 캐싱 빈번, 메모리 집약적 ML |
| Compute-optimized | Structured Streaming, 재사용 없는 풀스캔 처리, OPTIMIZE/Z-ORDER 같은 고성능 연산 |
| Storage-optimized | 대규모 디스크 캐싱, Delta 캐싱 활용, ad-hoc 쿼리, 디스크 캐싱 기반 ML/DL |
| GPU-optimized | 고급 ML/DL 워크로드 (대용량 메모리 필요) |
| General purpose | 특별한 최적화가 필요 없는 경우, VACUUM 같은 유지보수 작업 |
Spot Instances (스팟 인스턴스)
- 클라우드의 유휴 용량을 저렴하게 활용
- 단점: 클라우드 제공업체가 언제든 중단시킬 수 있음
- 적합한 경우: ETL, ML 학습처럼 중단이 허용되는 배치성 작업
Instance Pools (인스턴스 풀)
- 미리 대기 중인(idle) VM 집합
- 클러스터 시작/오토스케일링 시간 단축 → 빠른 실행이 필요한 자동화 작업에 유용
- 주의: Databricks는 idle 인스턴스에 요금을 부과하지 않지만, 클라우드 제공업체는 요금 부과 (실제로 계속 실행 중이므로)
2. Serverless Compute (서버리스 컴퓨트)
인프라 설정/관리 없이 완전 관리형으로 제공되는 온디맨드 컴퓨팅
특징
- Databricks가 리소스를 자동 할당/관리 → 운영 부담 없음
- 빠른 시작/스케일링 → 유휴 시간 최소화, 사용한 만큼만 과금
- 버전이 없는(versionless) 제품 → 런타임이 자동 업그레이드됨
- ⚠️ Python과 SQL만 지원 (클래식은 모든 언어 지원)
- Photon Engine, 자동 인스턴스 타입 선택, 오토스케일링 등이 기본 내장 (클래식은 수동 설정 필요)
Classic vs Serverless 비교
항목 Classic Serverless
| 설정 | 수동 구성/튜닝 필요 | 최소 설정, 완전 관리형 |
| 언어 지원 | 모든 언어 | Python, SQL만 |
| 시작 속도 | 상대적으로 느림 | 빠름 |
| DBU 단가 | 표준 | 약간 더 비쌈 (단, VM 비용 포함) |
| 총비용 구조 | DBU + 클라우드 VM 비용(유휴시간 포함) + 운영인력(DevOps) 비용 | DBU 하나로 VM 비용까지 커버 |
3. SQL Warehouses
SQL 워크로드에 최적화된 컴퓨팅 자원, 성능·동시성 면에서 유리 (쿼리, 대시보드 처리에 효율적)
타입 사용 시점
| Serverless SQL Warehouse | ETL, BI, 데이터 탐색용 (기본 권장) |
| Pro SQL Warehouse | 해당 리전에 서버리스가 없거나, 커스텀 네트워킹으로 온프레미스/사내 DB에 연결해야 할 때 |
핵심 정리
- 비용 최적화: Job에는 Job Cluster, 배치성 작업에는 Spot Instance, 빠른 시작이 필요하면 Instance Pool
- 워크로드에 맞는 인스턴스 패밀리 선택이 성능/비용의 핵심
- 서버리스 우선 고려: 운영 부담을 줄이고 싶다면 서버리스가 유리하지만, Python/SQL만 지원한다는 제약 확인 필요
- SQL 워크로드는 별도로 SQL Warehouse (가능하면 Serverless 타입) 사용 권장
반응형
'IT 공부 > 데이터브릭스' 카테고리의 다른 글
| 오답노트 정리1 (0) | 2026.09.21 |
|---|---|
| Fine-Grained Access Control (0) | 2026.09.15 |
| Unity Catalogue (0) | 2026.09.15 |
| Data Object Privileges (0) | 2026.09.15 |
| Databricks SQL (0) | 2026.09.15 |