Notebook 종속성 설치하기
환경 쪽 패널을 사용하여 서버리스 Notebook에 대한 Python 종속성을 설치할 수 있습니다. 이 패널은 Notebook의 라이브러리 요구 사항을 편집, 보기 및 내보낼 수 있는 단일 위치를 제공합니다. 이러한 종속성은 기본 환경을 사용하거나 개별적으로 추가할 수 있습니다.
Notebook이 아닌 작업의 경우 Notebook이 아닌 작업에 대한 환경 및 종속성 구성을 참조 하세요.
Important
PySpark 또는 PySpark를 서버리스 Notebook에 대한 종속성으로 설치하는 라이브러리를 설치하지 마세요. 이렇게 하면 세션이 중지되고 오류가 발생합니다. 이 경우 환경을 다시 설정합니다.
기본 환경 구성
기본 환경은 작업 영역 파일 또는 추가 환경 종속성을 지정하는 Unity 카탈로그 볼륨에 저장된 YAML 파일입니다. 기본 환경은 Notebook 간에 공유할 수 있습니다. 기본 환경을 구성하려면 다음을 수행합니다.
Python 가상 환경에 대한 설정을 정의하는 YAML 파일을 만듭니다. 다음 예제 YAML은 MLflow 프로젝트 환경 사양을 기반으로 몇 가지 라이브러리 종속성이 있는 기본 환경을 정의합니다.
client: "1" dependencies: - --index-url https://pypi.org/simple - -r "/Workspace/Shared/requirements.txt" - my-library==6.1 - "/Workspace/Shared/Path/To/simplejson-3.19.3-py3-none-any.whl" - git+https://github.com/databricks/databricks-cli
YAML 파일을 작업 영역 파일 또는 Unity 카탈로그 볼륨으로 업로드합니다. 파일 가져오기 또는 Unity 카탈로그 볼륨에 파일 업로드를 참조하세요.
전자 필기장 오른쪽에서 단추를 클릭하여 환경 패널을 확장합니다. 이 단추는 Notebook이 서버리스 컴퓨팅에 연결된 경우에만 나타납니다.
기본 환경 필드에 업로드된 YAML 파일의 경로를 입력하거나 해당 파일로 이동하여 선택합니다.
적용을 클릭합니다. 그러면 Notebook 가상 환경에 종속성이 설치되고 Python 프로세스가 다시 시작됩니다.
사용자는 종속성을 개별적으로 설치하여 기본 환경에 지정된 종속성을 재정의할 수 있습니다.
Notebook 환경 구성
환경 패널의 종속성 탭을 사용하여 서버리스 컴퓨팅에 연결된 Notebook에 종속성을 설치할 수도 있습니다.
- 전자 필기장 오른쪽에서 단추를 클릭하여 환경 패널을 확장합니다. 이 단추는 Notebook이 서버리스 컴퓨팅에 연결된 경우에만 나타납니다.
-
환경 버전 드롭다운에서 환경 버전을 선택합니다. 서버리스 환경 버전
참조하세요. Databricks는 최신 Notebook 기능을 얻으려면 최신 버전을 선택하는 것이 좋습니다. - 종속성 섹션에서 종속성 추가를 클릭하고 필드에 라이브러리 종속성의 경로를 입력합니다. requirements.txt 파일에서 유효한 형식으로 종속성을 지정할 수 있습니다.
- 적용을 클릭합니다. 그러면 Notebook 가상 환경에 종속성이 설치되고 Python 프로세스가 다시 시작됩니다.
참고 항목
서버리스 컴퓨팅을 사용하는 작업은 Notebook 코드를 실행하기 전에 Notebook의 환경 사양을 설치합니다. 즉, Notebook을 작업으로 예약할 때 종속성을 추가할 필요가 없습니다. 환경 및 종속성 구성을 참조 하세요.
설치된 종속성 및 pip 로그 보기
설치된 종속성을 보려면 Notebook에 대한 환경 쪽 패널에서 설치를 클릭합니다. 패널 아래쪽에 있는 pip 로그을 클릭하여 노트북 환경의 pip 설치 로그도 확인할 수 있습니다.
환경 다시 설정
Notebook이 서버리스 컴퓨팅에 연결된 경우 Databricks는 Notebook의 가상 환경 콘텐츠를 자동으로 캐시합니다. 즉, 비활성으로 인해 연결이 끊긴 경우에도 기존 Notebook을 열 때 환경 패널에 지정된 Python 종속성을 다시 설치할 필요가 없습니다.
Python 가상 환경 캐싱도 작업에 적용됩니다. 즉, 필요한 종속성을 이미 사용할 수 있으므로 후속 작업 실행이 더 빠릅니다.
참고 항목
서버리스 작업에서 사용되는 사용자 지정 Python 패키지의 구현을 변경하는 경우 작업에서 최신 구현을 선택할 수 있도록 버전 번호도 업데이트해야 합니다.
환경 캐시를 지우고 서버리스 컴퓨팅에 연결된 Notebook의 환경 패널에 지정된 종속성을 새로 설치하려면 적용 옆의 화살표를 클릭한 다음 환경 다시 설정을 클릭합니다.
참고 항목
핵심 Notebook 또는 Apache Spark 환경을 중단하거나 변경하는 패키지를 설치하는 경우 가상 환경을 다시 설정합니다. 서버리스 컴퓨팅에서 Notebook을 분리하고 다시 연결한다고 해서 전체 환경 캐시가 반드시 지워지는 것은 아닙니다.
Notebook이 아닌 작업에 대한 환경 및 종속성 구성
Python 스크립트, Python 휠 또는 dbt 작업과 같이 지원되는 다른 작업 유형의 경우 기본 환경에는 설치된 Python 라이브러리가 포함됩니다. 설치된 라이브러리 목록을 보려면 사용 중인 클라이언트 버전의 설치된 Python 라이브러리 섹션을 참조하세요. 서버리스 환경 버전
환경 및 라이브러리 드롭다운 메뉴에서 기본Edit Icon 환경 옆을 클릭 하거나 + 새 환경 추가를 클릭합니다.
환경 버전 드롭다운에서 환경 버전을 선택합니다. 서버리스 환경 버전
참조하세요. Databricks는 최신 기능을 얻기 위해 최신 버전을 선택하는 것이 좋습니다. 환경 구성 대화 상자에서 + 라이브러리 추가를 클릭합니다.
라이브러리 아래의 드롭다운 메뉴에서 종속성 유형을 선택합니다.
파일 경로 텍스트 상자에 라이브러리의 경로를 입력합니다.
작업 영역 파일의 Python 휠의 경우 경로는 절대 경로여야 하며
/Workspace/
.Unity 카탈로그 볼륨의 Python 휠의 경우 경로는 다음과 여야
/Volumes/<catalog>/<schema>/<volume>/<path>.whl
합니다.파일의
requirements.txt
경우 PyPi를 선택하고 .를 입력합니다-r /path/to/requirements.txt
.
- 확인 또는 + 라이브러리 추가를 클릭하여 다른 라이브러리를 추가합니다.
- 작업을 추가하는 경우 작업 만들기를 클릭합니다. 작업을 편집하는 경우 작업 저장을 클릭합니다.
기본 Python 패키지 리포지토리 구성
Important
이 기능은 공개 프리뷰.
관리자는 작업 영역 내에서 서버리스 노트북 및 서버리스 작업 모두에 대한 기본 pip 구성으로 프라이빗 또는 인증된 패키지 리포지토리를 구성할 수 있습니다. 이렇게 하면 사용자가 index-url
또는 extra-index-url
명시적으로 정의하지 않고 내부 Python 리포지토리에서 패키지를 설치할 수 있습니다. 그러나 이러한 값이 코드 또는 Notebook에 지정된 경우 작업 영역 기본값보다 우선합니다.
이 구성은 Databricks 비밀 활용하여 리포지토리 URL 및 자격 증명을 안전하게 저장하고 관리합니다. 관리자는 미리 정의된 비밀 범위 및 Databricks CLI 비밀 명령 또는 REST API사용하여 설정을 구성할 수 있습니다.
기본 Python 패키지 리포지토리를 구성하려면 미리 정의된 비밀 범위를 만들고 액세스 권한을 구성한 다음 패키지 리포지토리 비밀을 추가합니다.
미리 정의된 비밀 범위 이름
작업 영역 관리자는 미리 정의된 키 아래의 지정된 비밀 범위에서 인증 토큰 및 비밀과 함께 기본 pip 인덱스 URL 또는 추가 인덱스 URL을 설정할 수 있습니다.
- 비밀 범위 이름:
databricks-package-management
- 인덱스 URL의 비밀 키:
pip-index-url
- 추가 인덱스 URL에 대한 비밀 키:
pip-extra-index-urls
- SSL 인증 콘텐츠의 비밀 키:
pip-cert
비밀 범위 만들기
비밀 범위는 Databricks CLI
databricks secrets create-scope databricks-package-management
databricks secrets put-acl databricks-package-management admins MANAGE
databricks secrets put-acl databricks-package-management users READ
Python 패키지 리포지토리 비밀 추가
미리 정의된 비밀 키 이름을 사용하여 Python 패키지 리포지토리 세부 정보를 추가합니다.
# Add index URL.
databricks secrets put-secret --json '{"scope": "databricks-package-management", "key": "pip-index-url", "string_value":"<index-url-value>"}'
# Add extra index URLs. If you have multiple extra index URLs, separate them using white space.
databricks secrets put-secret --json '{"scope": "databricks-package-management", "key": "pip-extra-index-urls", "string_value":"<extra-index-url-1 extra-index-url-2>"}'
# Add cert content. If you want to pip configure a custom SSL certificate, put the cert file content here.
databricks secrets put-secret --json '{"scope": "databricks-package-management", "key": "pip-cert", "string_value":"<cert-content>"}'
프라이빗 PyPI 리포지토리 비밀 수정 또는 삭제
PyPI 리포지토리 비밀을 수정하려면 put-secret
명령을 사용합니다. PyPI 리포지토리 비밀을 삭제하려면 아래와 같이 delete-secret
사용합니다.
# delete secret
databricks secrets delete-secret databricks-package-management pip-index-url
databricks secrets delete-secret databricks-package-management pip-extra-index-urls
databricks secrets delete-secret databricks-package-management pip-cert
# delete scope
databricks secrets delete-scope databricks-package-management
참고 항목
사용자가 서버리스 컴퓨팅을 Notebook에 다시 연결하거나 서버리스 작업을 다시 실행한 후에 비밀 수정 또는 삭제가 적용됩니다.