다음을 통해 공유


Python용 Databricks Connect를 사용하는 Databricks 유틸리티

메모

이 문서에서는 Databricks Runtime 13.3 LTS 이상에 대한 Databricks Connect에 대해 설명합니다.

이 문서에서는 Python용 Databricks Connect에서 Databricks 유틸리티 사용하는 방법을 설명합니다. Databricks Connect를 사용하면 인기 있는 IDE, Notebook 서버 및 사용자 지정 애플리케이션을 Azure Databricks 클러스터에 연결할 수 있습니다. Databricks Connect란?. Scala 버전의 이 문서에 대해서는 Databricks Connect for Scala와 함께 Databricks 유틸리티 을 참조하세요.

메모

Databricks Connect 사용을 시작하기 전에 Databricks Connect 클라이언트설정해야 합니다.

Databricks Connect를 사용하여 다음과 같이 Databricks 유틸리티에 액세스합니다.

  • WorkspaceClient 클래스의 dbutils 변수를 사용하여 Databricks 유틸리티에 액세스합니다. WorkspaceClient 클래스는 Python용 Databricks SDK 속하며 Databricks Connect에 포함됩니다.
  • Databricks 유틸리티에 액세스하려면 dbutils.fs을 사용하고 fs를 활용하십시오.
  • dbutils.secrets을 사용하여 Databricks 유틸리티 의 보안 비밀 관리 기능 유틸리티에 액세스합니다.
  • 이전 유틸리티 이외의 Databricks 유틸리티 기능은 dbutils통해 사용할 수 없습니다.

Python용 포함된 Databricks SDK를 사용하여 이전 Databricks 유틸리티 API뿐만 아니라 사용 가능한 모든 Databricks REST API에 액세스할 수도 있습니다. PyPI에서 databricks-sdk 참조하세요.

WorkspaceClient를 초기화하려면 워크스페이스와 연동된 Databricks SDK 인증에 필요한 충분한 정보를 제공해야 합니다. 예를 들어 다음을 수행할 수 있습니다.

  • 작업 영역 URL 및 액세스 토큰을 코드 내에서 직접 하드 코딩한 다음 다음과 같이 WorkspaceClient 초기화합니다. 이 옵션은 지원되지만 Databricks 코드가 버전 제어에 체크 인되거나 공유되는 경우 액세스 토큰과 같은 중요한 정보를 노출할 수 있으므로 이 옵션을 권장하지 않습니다.

    from databricks.sdk import WorkspaceClient
    
    w = WorkspaceClient(host  = f"https://{retrieve_workspace_instance_name()}",
                        token = retrieve_token())
    
  • 필드 host이 포함된 token을 만들거나 지정한 후, WorkspaceClient를 다음과 같이 초기화합니다.

    from databricks.sdk import WorkspaceClient
    
    w = WorkspaceClient(profile = "<profile-name>")
    
  • 환경 변수를 DATABRICKS_HOSTDATABRICKS_TOKEN에 대해 Databricks Connect에 설정한 것과 동일한 방식으로 설정하고, 그런 다음 다음과 같이 WorkspaceClient를 초기화합니다.

    from databricks.sdk import WorkspaceClient
    
    w = WorkspaceClient()
    

Python용 Databricks SDK는 Databricks Connect에 대한 SPARK_REMOTE 환경 변수를 인식하지 못합니다.

Python용 Databricks SDK에 대한 추가 Azure Databricks 인증 옵션과 Databricks SDK 내에서 AccountClient 초기화하여 작업 영역 수준이 아닌 계정 수준에서 사용 가능한 Databricks REST API에 액세스하는 방법은 PyPI에서 databricks-sdk 참조하세요.

다음 예제에서는 Python용 Databricks SDK를 사용하여 Databricks 유틸리티를 자동화하는 방법을 보여 줍니다. 이 예제에서는 작업 영역 내의 Unity 카탈로그 볼륨 경로에 zzz_hello.txt 파일을 만들고 파일에서 데이터를 읽은 다음 파일을 삭제합니다. 이 예제에서는 환경 변수가 DATABRICKS_HOSTDATABRICKS_TOKEN 이미 설정되었다고 가정합니다.

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

file_path = "/Volumes/main/default/my-volume/zzz_hello.txt"
file_data = "Hello, Databricks!"
fs = w.dbutils.fs

fs.put(
  file      = file_path,
  contents  = file_data,
  overwrite = True
)

print(fs.head(file_path))

fs.rm(file_path)

Python용 Databricks SDK 설명서의 dbutils와의 상호 작용도 참조하세요.