Skip to main content

서버리스 컴퓨팅이란?

💡 Serverless 컴퓨트 는 사용자가 서버(클러스터)를 직접 생성하거나 관리할 필요 없이, 코드를 실행하면 Databricks가 알아서 리소스를 할당 해 주는 방식입니다.
서버리스 컴퓨팅은 인프라 관리의 부담을 완전히 제거합니다. 노드 타입 선택, 오토스케일링 설정, 런타임 버전 관리, 보안 패치 적용 등 모든 인프라 운영을 Databricks가 대신 처리합니다. 사용자는 비즈니스 로직에만 집중 할 수 있습니다.

왜 서버리스가 필요한가?

기존 클러스터 기반 방식에서 팀이 겪는 공통적인 문제들을 서버리스가 해결합니다.

Databricks 서버리스 아키텍처

서버리스의 핵심은 컴퓨트 리소스가 Databricks 관리 환경에서 실행 된다는 것입니다. 기존 방식에서는 고객의 클라우드 계정(VPC/VNet)에서 VM이 실행되었지만, 서버리스에서는 Databricks가 관리하는 인프라에서 실행됩니다. 고객의 데이터는 고객 환경에 유지되며, 서버리스 컴퓨트만 Databricks가 관리합니다.

기존 방식과의 비교


서버리스 지원 워크로드

현재 Databricks에서 서버리스를 사용할 수 있는 워크로드는 다음과 같습니다.

서버리스 vs 클래식 상세 비교

시작 시간 비교

관리 부담 비교


서버리스 SQL Warehouse 상세

서버리스 SQL Warehouse는 가장 먼저 도입되고, 가장 널리 사용되는 서버리스 워크로드입니다.

서버리스 Notebooks 상세

서버리스 Notebooks는 대화형 개발에서 클러스터 시작 대기 시간을 제거합니다.

사용 방법

  1. 노트북 상단의 클러스터 선택 드롭다운을 클릭합니다
  2. Serverless 를 선택합니다
  3. 코드를 실행하면 수 초 내에 결과를 확인할 수 있습니다

환경 설정 (Environment)

서버리스 Notebooks에서는 Environment 를 통해 Python 라이브러리를 관리합니다.
💡 Environment vs Init Script: 서버리스에서는 Init Script 대신 Environment 설정을 사용합니다. 노트북 또는 Job에서 필요한 Python 라이브러리를 requirements.txt 형식으로 지정할 수 있습니다.

서버리스 Jobs 상세

서버리스 Jobs는 스케줄된 배치 작업을 인프라 관리 없이 실행합니다.

Databricks Asset Bundle에서 설정

UI에서 서버리스 Job 설정

  1. Workflows 메뉴에서 Create Job 클릭합니다
  2. 태스크 설정에서 Compute 옵션을 Serverless 로 선택합니다
  3. 필요한 라이브러리를 Environment 탭에서 추가합니다
  4. 스케줄을 설정합니다

서버리스 파이프라인 (SDP)

선언적 데이터 파이프라인(SDP, 구 DLT)도 서버리스로 실행할 수 있습니다.
파이프라인 설정에서 Serverless 를 선택하면, 파이프라인 실행 시 자동으로 서버리스 컴퓨트가 할당됩니다.
다음 페이지: 보안, 비용 모델, 제한사항, 마이그레이션 가이드 내용은 서버리스 컴퓨팅 보안, 비용, 마이그레이션 페이지에서 이어집니다.