안녕하세요, 저는 Azure를 담당하는 하라입니다.
오늘은 최근 추천된 데이터 인프라용 "Azure Databricks" PaaS의 가격 구조를 소개하고자 합니다. Azure Databricks는 우수한 기능과 성능을 갖춘 추천 서비스입니다. 가격 구조를 이해하면 마음의 평화를 가지고 더 적극적으로 사용할 수 있을 것입니다.
*본문에 기재된 가격은 2022년 3월 ~ 4월 기준입니다.
Azure Databricks 자체에 대한 자세한 정보는 공식 문서를 참조해 주세요
Azure Databricks란 무엇인가요? | Microsoft Docs
Azure Databricks 가격 개요
Azure Databricks 사용 수수료는 크게 두 부분으로 나눌 수 있습니다: (1) Azure 리소스 사용 수수료와 (2) Databricks 소프트웨어 사용 수수료.

Azure 리소스 사용 수수료에 대하여
Azure Databricks를 사용할 때, 아래 그림에 표시된 리소스는 Azure에 배포됩니다. 그림 왼쪽의 "데이터 레이크"는 사용자가 보유한 데이터를 저장하는 스토리지 계정을 의미하며, Azure Databricks 전용 리소스를 의미하지 않습니다. 오른쪽의 "Databricks workspaces" 프레임은 Azure Databricks를 사용할 때 생성되는 자원입니다.
사용자가 "사용자 구독"을 볼 수 있는 곳에서 생성되는 리소스입니다. Azure Databricks가 자동으로 생성하고 삭제하지만, 자원 자체는 일반 가상 머신, 디스크, 스토리지 등 Azure 가격 목록에 따라 요금이 부과됩니다.
Microsoft Managed Subscriptions의 리소스는 사용자에게 보이지 않으며 명시적으로 청구되지 않습니다.

출처: 가상 네트워크 관리 - Azure Databricks | Microsoft 문서
Azure Databricks 소프트웨어 사용 수수료
Azure 리소스 외에도 Databricks 소프트웨어 비용도 부과됩니다. 해당 단위는 "Databricks Units (DBU)"이며, 1개의 DBU 노드를 1시간 동안 운영하는 비용은 다음과 같습니다: 실제 요금은 초 단위로 계산됩니다.

클러스터 차지 계산 시도해 보세요
요금을 계산해 봅시다. Azure Databricks의 데이터 처리는 클러스터로 이루어집니다.
클러스터에는 여러 종류가 있지만, 여기서는 SQL Compute를 위해 클러스터를 사용할 것입니다. SQL Compute 클러스터는 아래 표에 나와 같이 크기와 워커 노드 수의 사전 설정된 조합을 가지고 있습니다.

예시 "소규모" 클러스터 가격
"소규모" 클러스터는 1개의 드라이버 노드와 4개의 워커 노드로 구성됩니다. 이 크기의 1시간 동안 운영하는 데 사용되는 자원의 종류와 양은 다음과 같습니다:

Azure 가상 머신에 Spot VM을 사용한다면: 이 예시에서 가상 머신 비용은 83% 할인됩니다. 작업이 중단되어도 작업이 다시 시도되고 문제가 되지 않는다면, 비용은 크게 줄일 수 있습니다.

※스팟 VM
클러스터 크기 클러스터 작업 부하별 비용
Azure Databricks당 DBU 비용은 클러스터 워크로드에 따라 다릅니다. SQL 컴퓨트 클러스터 크기를 기준으로 작업 용량에 따라 시간당 산출된 클러스터 비용은 다음 그림에 나타났습니다. 모든 목적 및 작업 작업 부하에 대해서는 드라이버 사양, 워커 사양 및 수치를 유연하게 설정할 수 있지만, 여기서는 비교를 위해 SQL 워크로드 사양에 따라 계산합니다.

클러스터는 언제 발사해야 하니까요
기본적으로 사용자 데이터에 접근할 때 클러스터를 시작해야 합니다. 클러스터는 SELEC 테이블 데이터뿐만 아니라 테이블 리스트 보기와 파일 시스템 확인에도 사용됩니다(Databricks File System = DBFS). 노트북 보기 및 편집, 작업 구성, 클러스터 관리 등에는 클러스터가 필요하지 않습니다.
사용 수수료 관리
클러스터 설정에서 태그를 추가할 수 있습니다. 여기서 설정한 태그는 Databricks가 생성하는 Azure 리소스에 자동으로 추가되므로, 클러스터 사용량에 따라 사용 요금을 배분할 수 있습니다.

사전 구매 계획 고려해
DBU의 경우, Databricks 커밋 유닛(DBCU)을 1년 또는 3년 전에 구매할 수 있는 메커니즘이 있습니다. 이는 가상 머신 예약과 유사하지만, 매시간 만료되는 가상 머신 예약과 달리, 1년 동안 선결제하면 1년 동안 언제든지 사용할 수 있는 크레딧입니다. 이 메커니즘은 Azure EA의 약속에 가깝다고 할 수 있습니다.
미리 구매한 DBCU를 모두 사용하면 DBU에 대한 요금이 정가로 청구됩니다. 클러스터가 종료되거나 성능이 제한되지 않습니다.
DBCU 요금제는 Azure Databricks 가격 페이지를 방문하세요.
Azure Databricks pricing | Microsoft Azure
아래 표에 DBCU의 예시가 나와 있습니다. 가장 낮은 DBCU 플랜(연간 25,000 DBU)은 하루 9시간, 한 달 20일 동안 "소규모" 클러스터를 운영하는 것과 같습니다.

예시 데이터스토어 가격
데이터 저장소에는 스토리지 계정을 사용할 수 있습니다. Azure Databricks 특유의 요소가 사용료 추정에 포함되어 있지 않아 세부 사항은 생략하겠습니다만, 10TB의 Data lake storage(gen2)를 동일본에 로컬 중복 스토리지와 함께 사용하면 약 200~300달러 정도 됩니다.
저장 계좌는 예약 주문 구매 시 할인 혜택을 받을 수 있습니다. 자세한 내용은 문서를 참고해 주세요.
예약 할인이 Azure 스토리지 서비스에 적용되는 방법 | Microsoft Docs
결론
이 글에서는 Azure Databricks의 가격 구조에 대해 자세히 논의했습니다. 전반적으로, 클러스터의 가동 시간에 따라 요금을 부과하는 간단한 메커니즘입니다. 성능과 기능뿐만 아니라 가격 면에서도 다루기 쉬운 서비스이므로, 꼭 시도해 보시길 권장합니다.
Colorkrew는 Azure Databricks 기반 데이터 분석 플랫폼 구현을 위한 지원 서비스를 제공합니다. 관심이 있으시면 다음 서비스 페이지에서 연락해 주세요.