다음을 통해 공유


R용 Databricks Connect

참고 항목

이 문서에서는 Databricks Runtime 13.0 이상 버전용 Databricks Connect와의 sparklyr 통합에 대해 설명합니다. 이 통합은 Databricks에서 제공되거나 Databricks에서 직접 지원되지 않습니다.

질문이 있는 경우 Posit 커뮤니티로 이동하세요.

문제를 보고하려면 GitHub에서 sparklyr 리포지토리의 문제 섹션으로 이동합니다.

자세한 내용은sparklyr 설명서의 Databricks Connect v2를 참조하세요.

이 문서에서는 R sparklyrRStudio Desktop을 사용하여 Databricks Connect를 빠르게 시작하는 방법을 보여 줍니다.

Databricks Connect를 사용하면 RStudio, Desktop, Notebook 서버 및 기타 사용자 지정 애플리케이션처럼 인기 있는 IDE를 Azure Databricks 클러스터에 연결할 수 있습니다. Databricks Connect란?을 참조하세요.

자습서

이 자습서에서는 RStudio Desktop 및 Python 3.10을 사용합니다. 아직 설치되지 않은 경우 R 및 RStudio Desktop 및 Python 3.10을 설치합니다.

이 자습서에 대한 추가 정보는 sparklyr 웹 사이트의 Spark Connect 및 Databricks Connect v2의 "Databricks Connect" 섹션을 참조하세요.

요구 사항

이 자습서를 완료하려면 다음 요구 사항을 충족해야 합니다.

  • 대상 Azure Databricks 작업 영역 및 클러스터는 Databricks Connect에 대한 컴퓨팅 구성 요구 사항을 충족해야 합니다.
  • 클러스터 ID를 사용할 수 있어야 합니다. 클러스터 ID를 가져오려면 작업 영역에서 사이드바에서 컴퓨팅을 클릭한 다음 클러스터 이름을 클릭합니다. 웹 브라우저의 주소 표시줄에서 URL에서 clustersconfiguration 긴 문자 문자열을 복사합니다.

1단계: 개인용 액세스 토큰 만들기

참고 항목

R용 Databricks Connect 인증은 현재 Azure Databricks 개인용 액세스 토큰만 지원합니다.

이 자습서에서는 Azure Databricks 작업 영역에서 인증하기 위해 Azure Databricks 개인용 액세스 토큰 인증을 사용합니다.

Azure Databricks 개인용 액세스 토큰이 이미 있는 경우 2단계로 건너뜁니다. Azure Databricks 개인용 액세스 토큰이 이미 있는지 확실하지 않은 경우 사용자 계정의 다른 Azure Databricks 개인 액세스 토큰에 영향을 주지 않고 이 단계를 수행할 수 있습니다.

개인 액세스 토큰을 만들려면 작업 영역 사용자를 위한 Azure Databricks 개인용 액세스 토큰의 단계를 따릅니다.

2단계: 프로젝트 만들기

  1. RStudio 데스크톱을 시작합니다.
  2. 기본 메뉴에서 파일 > 새 프로젝트를 클릭합니다.
  3. 새 디렉터리를 선택합니다.
  4. 새 프로젝트를 선택합니다.
  5. 디렉터리 이름하위 디렉터리로 프로젝트 만들기의 경우 새 프로젝트 디렉터리의 이름과 이 새 프로젝트 디렉터리를 만들 위치를 입력합니다.
  6. 이 프로젝트에서 renv 사용을 선택합니다. 업데이트된 버전의 renv 패키지를 설치하라는 메시지가 표시되면 를 클릭합니다.
  7. 프로젝트 만들기를 클릭합니다.

RStudio Desktop 프로젝트 만들기

3단계: Databricks Connect 패키지 및 기타 종속성 추가

  1. RStudio 바탕 화면 기본 메뉴에서 도구 > 패키지 설치를 클릭합니다.

  2. 설치 위치 설정을 리포지토리(CRAN)로 그대로 둡니다.

  3. 패키지의 경우 Databricks Connect 패키지 및 이 자습서의 필수 구성 요소인 다음 패키지 목록을 입력합니다.

    sparklyr,pysparklyr,reticulate,usethis,dplyr,dbplyr
    
  4. 라이브러리에 설치 설정을 R 가상 환경으로 그대로 둡니다.

  5. 종속성 설치가 선택되어 있는지 확인합니다.

  6. 설치를 클릭합니다.

Databricks Connect 패키지 종속성 설치

  1. 콘솔 보기(보기 > 콘솔로 포커스 이동)에서 설치를 계속하라는 메시지가 표시되면 를 입력합니다 Y. sparklyrpysparklyr 패키지 및 해당 종속성은 R 가상 환경에 설치됩니다.

  2. 콘솔 창에서 reticulate를 사용하여 다음 명령을 실행해서 Python을 설치합니다. (R용 Databricks Connect는 reticulate과 Python이 우선 설치되어 있어야 합니다.) 다음 명령에서 3.10을 Azure Databricks 클러스터에 설치된 Python 버전의 주 버전과 부 버전으로 바꿉니다. 이 주 버전과 부 버전을 찾으려면 Databricks Runtime 릴리스 정보 버전 및 호환성에서 클러스터의 Databricks Runtime 버전에 대한 릴리스 정보의 "시스템 환경" 섹션을 참조하세요.

    reticulate::install_python(version = "3.10")
    
  3. 콘솔 창에서 다음 명령을 실행하여 Databricks Connect 패키지를 설치합니다. 다음 명령에서 13.3을 Azure Databricks 클러스터에 설치된 Databricks Runtime 버전으로 바꿉니다. 이 버전을 찾으려면 Azure Databricks 작업 영역의 클러스터 세부 정보 페이지에서 구성 탭에서 Databricks Runtime 버전 상자를 참조하세요.

    pysparklyr::install_databricks(version = "13.3")
    

    클러스터의 Databricks Runtime 버전을 모르거나 검색하지 않으려는 경우 다음 명령을 대신 실행할 수 있으며, pysparklyr이 클러스터를 쿼리하여 사용할 올바른 Databricks Runtime 버전을 확인합니다.

    pysparklyr::install_databricks(cluster_id = "<cluster-id>")
    

    프로젝트가 방금 지정한 버전과 동일한 Databricks Runtime 버전이 있는 다른 클러스터에 나중에 연결하려면 pysparklyr은 동일한 Python 환경을 사용합니다. 새 클러스터에 다른 Databricks Runtime 버전이 있는 경우 새 Databricks Runtime 버전 또는 클러스터 ID를 사용하여 pysparklyr::install_databricks 명령을 다시 실행해야 합니다.

4단계: 작업 영역 URL, 액세스 토큰 및 클러스터 ID에 대한 환경 변수 설정

Databricks는 Azure Databricks 작업 영역 URL, Azure Databricks 개인용 액세스 토큰 또는 Azure Databricks 클러스터 ID와 같은 값을 R 스크립트로 하드 코딩하거나 변경하는 것을 권장하지 않습니다. 대신 이러한 값을 별도로 저장합니다(예: 로컬 환경 변수). 이 자습서에서는 .Renviron 파일에 환경 변수를 저장하기 위한 RStudio 바탕 화면의 기본 제공 지원을 사용합니다.

  1. 이 파일이 아직 없는 경우 환경 변수를 저장할 .Renviron 파일을 만든 다음 편집을 위해 이 파일을 엽니다. RStudio 바탕 화면 콘솔에서 다음 명령을 실행합니다.

    usethis::edit_r_environ()
    
  2. 표시되는 .Renviron 파일(보기 > 원본으로 포커스 이동)에 다음 콘텐츠를 입력합니다. 이 콘텐츠에서 다음 자리 표시자를 바꿉니다.

    • <workspace-url>작업 영역별 URL로 바꿉니다(예: https://adb-1234567890123456.7.azuredatabricks.net).
    • <personal-access-token>을 1단계의 Azure Databricks 개인용 액세스 토큰으로 대체합니다.
    • <cluster-id>를 이 자습서의 요구 사항에서 클러스터 ID로 대체합니다.
    DATABRICKS_HOST=<workspace-url>
    DATABRICKS_TOKEN=<personal-access-token>
    DATABRICKS_CLUSTER_ID=<cluster-id>
    
  3. .Renviron 파일을 저장합니다.

  4. 환경 변수를 R에 로드합니다. 기본 메뉴에서 세션 > R 다시 시작을 클릭합니다.

Databricks Connect에 대한 환경 변수 설정

5단계: 코드 추가

  1. RStudio 바탕 화면 기본 메뉴에서 파일 > 새 파일 > R 스크립트를 클릭합니다.

  2. 파일에 다음 코드를 입력한 다음 demo.R와 같이 파일을 저장합니다(파일 > 저장).

    library(sparklyr)
    library(dplyr)
    library(dbplyr)
    
    sc <- sparklyr::spark_connect(
      master     = Sys.getenv("DATABRICKS_HOST"),
      cluster_id = Sys.getenv("DATABRICKS_CLUSTER_ID"),
      token      = Sys.getenv("DATABRICKS_TOKEN"),
      method     = "databricks_connect",
      envname    = "r-reticulate"
    )
    
    trips <- dplyr::tbl(
      sc,
      dbplyr::in_catalog("samples", "nyctaxi", "trips")
    )
    
    print(trips, n = 5)
    

6단계: 코드 실행하기

  1. RStudio 바탕 화면의 demo.R 파일 툴바에서 원본을 클릭합니다.

    RStudio 바탕 화면 프로젝트 실행

  2. 콘솔에서 trips 테이블의 처음 다섯 개 행이 나타납니다.

  3. 연결 보기(보기 > 연결 표시)에서 사용 가능한 카탈로그, 스키마, 테이블 및 보기를 탐색할 수 있습니다.

    프로젝트의 연결 보기

7단계: 코드 디버그

  1. demo.R 파일에서 print(trips, n = 5) 옆의 여백을 클릭하여 중단점을 설정합니다.
  2. demo.R 파일의 툴바에서 원본을 클릭합니다.
  3. 중단점에서 실행 중인 코드가 일시 중지되면 환경 보기(보기 > 환경 보기)에서 변수를 검사할 수 있습니다.
  4. 기본 메뉴에서 디버그 > 계속을 클릭합니다.
  5. 콘솔에서 trips 테이블의 처음 다섯 개 행이 나타납니다.

RStudio 바탕 화면 프로젝트 디버그