Databricks SDK란?
Databricks Python SDK는 Databricks 플랫폼의 모든 기능을 프로그래밍 방식으로 제어 할 수 있게 해주는 공식 Python 라이브러리입니다. 클러스터 생성, Job 실행, SQL 쿼리, Unity Catalog 관리 등 UI에서 할 수 있는 거의 모든 작업을 Python 코드로 자동화할 수 있습니다.💡 왜 SDK가 필요한가? UI에서 수동으로 작업하는 것은 소규모 환경에서는 문제가 없지만, 수십 개의 클러스터를 관리하거나 수백 개의 Job을 배포할 때는 자동화가 필수적입니다. SDK를 사용하면 Infrastructure as Code(IaC) 방식으로 Databricks 리소스를 관리할 수 있습니다.
설치 및 인증
설치
인증 방법
Databricks SDK는 통합 인증(Unified Auth) 을 지원합니다. 여러 인증 방법 중 환경에 맞는 것을 선택할 수 있습니다.OAuth 인증 (권장)
PAT 인증
Service Principal (M2M OAuth)
환경 변수 사용
코드에 인증 정보를 직접 넣지 않고 환경 변수를 활용하는 것을 권장합니다.주요 클라이언트
SDK는 두 가지 주요 클라이언트를 제공합니다.핵심 API 영역
클러스터 관리 (w.clusters)
Job 관리 (w.jobs)
SQL 실행 (w.statement_execution)
Unity Catalog 관리
Model Serving (w.serving_endpoints)
Secret 관리 (w.secrets)
Databricks Connect
Databricks Connect는 로컬 IDE(VS Code, PyCharm 등)에서 작성한 PySpark 코드를 원격 Databricks 클러스터에서 실행 할 수 있게 해주는 기능입니다. SDK의 일부로 제공됩니다.설치
중요: databricks-connect 버전은 대상 클러스터의 DBR(Databricks Runtime) 버전과 일치해야 합니다.
사용 예시
Databricks Connect vs 일반 PySpark 비교
REST API vs SDK 비교
Databricks REST API를 직접 호출하는 것 대비 SDK를 사용하면 여러 장점이 있습니다.
REST API를 직접 호출하면
requests 라이브러리로 헤더·URL·페이지네이션을 모두 수동 관리해야 합니다. SDK는 이 모든 것을 추상화하므로 코드가 훨씬 간결해집니다.