Databricks SDK 시작하기

Python SDK로 Databricks 다루기

Avi Steinberg

Software/Data Engineer

Databricks를 배워야 하는 이유

프로필 사진

  • ML, AI, 데이터 엔지니어링 분야 선도 클라우드 플랫폼
  • Fortune 500 기업의 60% 이상이 사용

Databricks 엠블럼

1 https://www.databricks.com/company/newsroom/press-releases/databricks-raising-10b-series-j-investment-62b-valuation
Python SDK로 Databricks 다루기

Databricks 워크스페이스란?

  • 클라우드 리소스의 Databricks 배포 환경
  • Databricks 자산에 접근하는 환경
  • Databricks 워크스페이스 자산 예시: 작업, 클러스터, 노트북
Python SDK로 Databricks 다루기

Databricks SDK 설치

SDK 설치

pip install databricks-sdk

WorkspaceClient 인스턴스화

from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
1 https://docs.databricks.com/en/dev-tools/sdk-python.html#language-venv
Python SDK로 Databricks 다루기

인증 환경 변수

  • 환경 변수 = 애플리케이션 동작을 설정하는 키/값 쌍

  • DATABRICKS_CLIENT_SECRET

  • DATABRICKS_CLIENT_ID
  • DATABRICKS_HOST=<workspace_id>.cloud.databricks.com

Databricks 워크스페이스 웹 URL 스크린샷

Python SDK로 Databricks 다루기

서비스 주체를 사용한 인증

  • 서비스 주체 = 애플리케이션을 나타내는 클라우드 플랫폼 내 보안 ID

  • 서비스 주체 생성

  • 서비스 주체에 권한 할당
  • 서비스 주체용 시크릿 생성

Databricks 워크스페이스 서비스 주체의 시크릿 페이지 이미지

1 https://docs.databricks.com/en/dev-tools/auth/oauth-m2m.html#step-1-create-a-service-principal
Python SDK로 Databricks 다루기

기본 인증

from databricks.sdk import WorkspaceClient
import os

os.environ['DATABRICKS_CLIENT_SECRET'] = "Your-Client-Secret"
os.environ['DATABRICKS_CLIENT_ID'] = "Your-Databricks-Client-Id"
os.environ['DATABRICKS_HOST'] = "Your-Databricks-Host"
w = WorkspaceClient()
  • 세 가지 환경 변수 값을 자동으로 읽어옴
Python SDK로 Databricks 다루기

Databricks 워크스페이스와 상호작용하기

# Authenticate WorkspaceClient
from databricks.sdk import WorkspaceClient
import os
os.environ['DATABRICKS_CLIENT_SECRET'] = "Your-Client-Secret"
os.environ['DATABRICKS_CLIENT_ID'] = "Your-Databricks-Client-Id"
os.environ['DATABRICKS_HOST'] = "Your-Databricks-Host"
w = WorkspaceClient()

# Create Cluster: cluster = w.clusters.create(cluster_name="Test-Cluster")
# List Clusters: for cluster in w.clusters.list(): print(f"Clusters Name: {cluster.cluster_name}")
Clusters Name: Test-Cluster
1 https://databricks-sdk-py.readthedocs.io/en/latest/clients/workspace.html
Python SDK로 Databricks 다루기

연습해 봅시다!

Python SDK로 Databricks 다루기

Preparing Video For Download...