서버리스 환경 구성

이 페이지에서는 Notebook 및 작업 작업에 대한 서버리스 환경을 구성하는 방법을 설명합니다. Notebook의 경우 환경 쪽 창을 사용하여 기본 환경을 선택하고, 종속성을 설치하고, 메모리를 구성하고, 사용 정책을 적용합니다. 작업 작업의 경우 작업을 만들거나 편집할 때 환경을 구성합니다.

환경 쪽 창을 확장하려면 Notebook의 오른쪽에 있는 환경 단추를 클릭합니다.

서버리스 환경 창

기본 환경 선택

기본 환경은 서버리스 Notebook에 사용할 수 있는 미리 설치된 라이브러리 및 환경 버전을 결정합니다. 환경 쪽 창의 기본 환경 선택기는 환경을 선택하는 위치입니다. 각 환경 버전에 대한 세부 정보를 보려면 서버리스 환경 버전을 참조하세요. Databricks는 최신 버전을 사용하여 가장 최신의 노트북 기능을 이용할 것을 권장합니다.

기본 환경 선택기는 다음 옵션을 포함합니다.

  • 표준: Databricks에서 제공하는 라이브러리를 사용하는 기본 서버리스 기본 환경입니다.
  • ML(Beta): Machine Learning 미리 설치된 Databricks Runtime의 Python 및 시스템 패키지가 있는 기본 환경입니다. 이 환경을 사용하여 Machine Learning 워크로드에 대한 클래식 Databricks Runtime을 서버리스 컴퓨팅으로 마이그레이션합니다. ML 기본 환경을 참조하세요.
  • AI: ML(기계 학습) 라이브러리가 미리 설치된 AI 최적화 기본 환경입니다. 이 옵션은 가속기(GPU)를 선택한 경우에만 나타납니다.
  • 추가: 확장하여 추가 옵션 표시:
    • 표준, ML 및 AI 환경의 이전 버전
    • 사용자 지정: YAML 파일을 사용하여 사용자 지정 환경을 지정합니다.
  • 작업 영역 환경: 관리자가 작업 영역에 대해 구성된 호환되는 모든 기본 환경을 나열합니다.

기본 환경을 선택하려면 다음을 수행합니다.

  1. Notebook UI에서 환경 쪽 창 환경을 클릭합니다.
  2. 기본 환경의 드롭다운 메뉴에서 환경을 선택합니다.
  3. 적용을 클릭합니다.

Notebook에 종속성 추가

서버리스에서는 컴퓨팅 정책 또는 init 스크립트를 지원하지 않으므로 환경 쪽 창을 사용하여 사용자 지정 종속성을 설치해야 합니다. 종속성을 개별적으로 설치하거나 공유 가능한 기본 환경을 사용하여 여러 종속성을 설치할 수 있습니다.

Azure Databricks Notebook의 가상 환경을 캐시하므로 비활성 후 Notebook을 다시 열거나 다시 시작할 때마다 종속성이 다시 설치되지 않습니다. 동일한 종속성 집합을 공유하는 작업 작업도 실행 내에서 이 캐시의 이점을 누릴 수 있습니다.

종속성을 개별적으로 설치하려면 다음을 수행합니다.

  1. Notebook UI에서 환경 쪽 창 환경을 클릭합니다.

  2. 종속성 섹션에서 종속성 추가를 클릭하고 필드에 종속성의 경로를 입력합니다. requirements.txt 파일에서 유효한 형식으로 종속성을 지정할 수 있습니다. Python 휠 파일 또는 Python 프로젝트(예: pyproject.toml 또는 setup.py 포함 디렉터리)는 작업 영역 파일 또는 Unity 카탈로그 볼륨에 있을 수 있습니다.

    • 작업 공간 파일을 사용하는 경우 경로는 절대 경로이어야 하며 /Workspace/로 시작해야 합니다.
    • Unity 카탈로그 볼륨에서 파일을 사용하는 경우 경로는 다음과 같은 형식 /Volumes/<catalog>/<schema>/<volume>/<path>.whl이어야 합니다.
  3. Apply 을 클릭하여 종속성을 설치하고 Python 프로세스를 다시 시작합니다.

Important

PySpark 또는 PySpark를 종속성으로 설치하는 라이브러리를 서버리스 노트북에 설치하지 마세요. 이렇게 하면 세션이 중지되고 오류가 발생합니다. 이 경우 라이브러리를 제거하고 환경다시 설정할 있습니다.

설치된 종속성을 보려면 환경 쪽 창에서 설치된 클릭합니다. 창 아래쪽에서 pip 로그를 클릭하여 Notebook 환경에 대한 pip 설치 로그 를 엽니다.

Note

작업 영역 관리자는 서버리스 Notebook 및 작업에 대한 기본 pip 원본으로 프라이빗 또는 인증된 패키지 리포지토리를 구성할 수 있습니다. 이렇게 하면 사용자는 index-url 또는 extra-index-url를 지정하지 않고도 내부 리포지토리에서 패키지를 설치할 수 있습니다. 기본 Python 패키지 리포지토리 구성 참조하세요.

사용자 지정 환경 사양 만들기

사용자 지정 환경 사양을 만들고 다시 사용할 수 있습니다.

  1. 서버리스 Notebook에서 기본 환경을 선택하고 원하는 종속성을 설치합니다.
  2. 케밥 메뉴 단추 Kebab 메뉴 아이콘 을 클릭합니다. 환경 창 아래쪽에서 환경 내보내기를 클릭합니다.
  3. 사양을 작업 영역 파일 또는 Unity 카탈로그 볼륨으로 저장합니다.

Notebook에서 사용자 지정 환경 사양을 사용하려면 기본 환경 드롭다운 메뉴에서 사용자 지정을 선택한 다음 폴더 아이콘을 사용하여 YAML 파일을 선택합니다.

작업 영역에서 공유할 공통 도구 만들기

이 예제에서는 유틸리티를 작업 영역 파일에 저장하고 서버리스 Notebook 종속성으로 설치합니다.

  1. 다음 구조를 사용하여 폴더를 만듭니다. 다른 사용자가 이 경로에 대한 읽기 권한이 있는지 확인합니다.

    helper_utils/
    ├── helpers/
    │   └── __init__.py   # your common functions live here
    ├── pyproject.toml
    
  2. pyproject.toml 다음과 같이 채웁다.

    [project]
    name = "common_utils"
    version = "0.1.0"
    
  3. 파일에 함수를 추가합니다 init.py . 다음은 그 예입니다.

    def greet(name: str) -> str:
        return f"Hello, {name}!"
    
  4. Notebook UI에서 환경 쪽 창 환경 아이콘을 클릭합니다.

  5. 종속성 섹션에서 종속성 추가를 클릭한 다음 util 파일의 경로를 입력합니다. 예: /Workspace/helper_utils.

  6. 적용을 클릭합니다.

이제 Notebook에서 함수를 사용할 수 있습니다.

from helpers import greet
print(greet('world'))

다음과 같이 출력됩니다.

Hello, world!

AI 실행 환경 사용 (서버리스 GPU)

Important

AI 런타임은 공개 미리 보기로 제공됩니다.

다음 단계에 따라 Azure Databricks Notebook에서 서버리스 GPU 컴퓨팅으로 구동되는 AI 런타임을 구성합니다.

  1. Notebook에서 맨 위에 있는 컴퓨팅 드롭다운 메뉴를 클릭하고 서버리스 GPU를 선택합니다.
  2. 환경 아이콘 을 클릭합니다. 환경 쪽 창을 엽니다.
  3. 액셀러레이터 필드에서 A10을 선택합니다.
  4. 기본 환경에서 기본 환경의 표준 또는 미리 설치된 ML(기계 학습) 라이브러리를 사용하는 AI 최적화 환경의 AI를 선택합니다.
  5. 적용을 클릭한 다음 Notebook 환경에 AI 런타임을 적용할지 확인합니다.

자세한 내용은 AI 런타임을 참조하세요.

높은 메모리 서버리스 컴퓨팅 사용

Notebook에서 메모리 부족 오류가 발생하면 더 높은 메모리 크기를 사용하도록 Notebook을 구성합니다. 이 메모리 크기 설정은 Notebook에서 코드를 실행할 때 사용되는 REPL 메모리의 크기를 증가합니다. Spark 세션의 메모리 크기에는 영향을 주지 않습니다. 메모리가 높은 서버리스 사용량은 표준 메모리보다 DBU 방출 속도가 높습니다.

사용 가능한 메모리 옵션은 다음과 같습니다.

  • 표준: 총 메모리는 16GB입니다.
  • 높음: 총 메모리는 32GB입니다.

Notebook의 메모리 설정을 구성하려면 다음을 수행합니다.

  1. Notebook UI에서 환경 쪽 창 환경을 클릭합니다.
  2. 메모리아래에서 고용량 메모리선택합니다.
  3. 적용을 클릭합니다.

이 메모리 설정은 Notebook의 메모리 기본 설정을 사용하여 실행되는 Notebook 작업 작업에도 적용됩니다. Notebook에서 메모리 기본 설정을 업데이트하면 다음 작업 실행에 영향을 줍니다.

서버리스 사용 정책 선택

서버리스 사용 정책을 사용하면 조직에서 세분화된 청구 특성에 대해 서버리스 사용량에 사용자 지정 태그를 적용할 수 있습니다.

작업 영역에서 서버리스 사용 정책을 사용하는 경우 Notebook에 적용할 정책을 선택합니다. 사용자가 하나의 서버리스 사용 정책에만 할당된 경우 해당 정책은 기본적으로 적용됩니다.

서버리스 컴퓨팅에 연결한 후 환경 쪽 창에서 정책을 선택합니다.

  1. Notebook UI에서 환경 쪽 창 환경을 클릭합니다.
  2. 서버리스 사용 정책에서 Notebook에 적용할 서버리스 사용 정책을 선택합니다.
  3. 적용을 클릭합니다.

적용하면 모든 노트북 사용에 정책의 사용자 지정 태그가 적용됩니다.

Note

Git 리포지토리에서 비롯된 노트북이거나 할당된 서버리스 사용 정책이 없는 경우, 서버리스 컴퓨팅에 다음에 연결될 때 마지막으로 선택한 서버리스 사용 정책으로 기본 설정됩니다.

원본 파일 내보내기에서 환경 포함

Python 노트북의 경우 환경 구성에서 소스 파일 내보내기에 포함 옵션을 켜거나 끌 수 있습니다. 사용하도록 설정하면 기본 환경 및 종속성이 원본 파일 내보내기에서 PEP 723 형식으로 저장됩니다. 이렇게 하면 Notebook이 Git 폴더 에 저장되거나 원본 파일로 다운로드될 때 환경 구성을 유지할 수 있습니다.

예를 들어 Standard v5 를 사용하는 Notebook은 해당 환경 구성을 파일 맨 위에 있는 인라인 메타데이터로 내보냅니다.

# Databricks notebook source
# /// script
# [tool.databricks.environment]
# environment_version = "5"
# ///
print("Hello World!")

환경 종속성 다시 설정

Notebook이 서버리스 컴퓨팅에 연결된 경우 Databricks는 Notebook의 가상 환경 콘텐츠를 자동으로 캐시합니다. 즉, 비활성으로 인해 연결이 끊긴 경우에도 일반적으로 기존 Notebook을 열 때 환경 쪽 창에 지정된 Python 종속성을 다시 설치할 필요가 없습니다.

Python 가상 환경 캐싱도 작업에 적용됩니다. 작업이 실행되면 캐시에 필요한 종속성이 이미 포함되어 있으므로 동일한 실행에서 완료된 작업과 동일한 종속성 집합을 공유하는 작업이 더 빠르게 완료됩니다.

Note

서버리스 작업에서 사용되는 사용자 지정 Python 패키지의 구현을 변경하는 경우 작업에서 최신 구현을 선택할 수 있도록 버전 번호도 업데이트해야 합니다.

환경 캐시를 지우고 서버리스 컴퓨팅에 연결된 Notebook의 환경 쪽 창에 지정된 종속성을 새로 설치하려면 적용 옆의 화살표를 클릭한 다음 기본값으로 다시 설정을 클릭합니다.

핵심 Notebook 또는 Apache Spark 환경을 중단하거나 변경하는 패키지를 설치하는 경우 잘못된 패키지를 제거한 다음 환경을 다시 설정합니다. 새 세션을 시작하면 전체 환경 캐시가 지워지지 않습니다.

작업 작업에 대한 환경 구성

각 작업 작업은 기본 환경 및 지정한 추가 라이브러리를 포함하는 격리된 환경에서 실행됩니다. 기본 환경은 Python 및 Scala 런타임 버전 및 미리 설치된 라이브러리를 설정합니다. 태스크는 환경 버전에서 설치된 라이브러리의 기본 집합을 상속합니다. 포함된 내용을 보려면 사용 중인 환경 버전설치된 Python 라이브러리 또는 설치된 Java 및 Scala 라이브러리 섹션을 참조하세요.

미리 설치된 라이브러리를 작업 영역 파일, Unity 카탈로그 볼륨 또는 공용 패키지 리포지토리의 라이브러리로 보완할 수 있습니다. 작업에 필요한 종속성만 런타임에 설치됩니다.

Important

JAR 작업에 서버리스 컴퓨팅을 사용하는 것은 공개 미리 보기로 제공됩니다.

Important

관리되는 기본 환경을 선택하는 것은 베타 버전입니다. 환경 구성 대화 상자의 기본 환경 드롭다운을 사용하면 Databricks에서 제공하는 환경(예: 표준 및 ML) 또는 작업 영역 구성 환경에서 선택할 수 있습니다. 이 기능이 없으면 대화 상자에 환경 버전 드롭다운이 대신 표시됩니다. 작업 영역 관리자는 미리 보기 페이지에서 이 기능을 사용하도록 설정할 수 있습니다.

Databricks 환경 및 작업 영역 환경 섹션으로 확장된 기본 환경 드롭다운을 보여 주는 환경 구성 대화 상자

작업 유형별로 환경 구성

작업에서 환경을 구성하는 방법은 작업 유형에 따라 달라집니다.

Notebook 작업

Notebook 작업은 기본적으로 Notebook 환경으로 설정되며, Notebook의 자체 구성된 기본 환경 및 종속성을 사용합니다. 작업 수준의 환경 변수로 이를 재정의할 수 있습니다.

Notebook 환경 및 작업 환경 옵션을 보여 주는 Notebook 작업에 대한 환경 및 라이브러리 드롭다운

작업 수준 환경을 구성하려면 다음을 수행합니다.

  1. 작업 구성에서 환경 및 라이브러리 드롭다운 메뉴를 클릭합니다.
  2. 작업 환경에서기본값 옆의 연필 아이콘을 클릭하거나 + 새 작업 환경 추가를 클릭합니다.
  3. 환경 구성 대화 상자의 기본 환경 드롭다운 메뉴에서 선택합니다.
    • Databricks environment: StandardML 같은 Azure Databricks 제공 옵션입니다.
    • 작업 영역 환경: 작업 영역 관리자가 구성한 사용자 지정 환경입니다. 작업 영역 기본 환경 관리를 참조하세요.
    • 더 보기: 이전 버전 및 사용자 지정 (YAML 파일 지정).
  4. 종속성에서 추가 라이브러리를 추가합니다. requirements.txt 파일에서 유효한 형식으로 라이브러리를 지정하거나 작업 영역 파일 또는 Unity 카탈로그 볼륨에 대한 절대 경로를 사용할 수 있습니다.
  5. 확인을 클릭합니다.

Note

작업 영역에 작업 미리 보기에 대한 작업 영역 기본 환경이 활성화되지 않은 경우 환경 구성 대화 상자에 기본 환경 대신 환경 버전 드롭다운이 표시됩니다.

환경을 구성하려면 버전을 선택한 다음 + 라이브러리 추가를 클릭합니다. 작업 영역 파일 경로(시작 /Workspace/), Unity 카탈로그 볼륨 경로(시작 /Volumes/) 또는 요구 사항 파일 참조(예 -r /Workspace/path/to/requirements.txt: )를 지정할 수 있습니다.

Python 스크립트 작업 및 Python 휠 작업

Python 스크립트 및 Python 휠 작업을 구성하려면 환경을 구성해야 합니다.

 종속성 추가 링크를 보여 주는 Python 휠 작업에 대한 환경 및 라이브러리 섹션

  1. 작업 구성의 환경 및 라이브러리에서 + 종속성 추가를 클릭합니다.
  2. 환경 구성 대화 상자의 기본 환경 드롭다운 메뉴에서 선택합니다.
    • Databricks environment: StandardML 같은 Azure Databricks 제공 옵션입니다.
    • 작업 영역 환경: 작업 영역 관리자가 구성한 사용자 지정 환경입니다. 작업 영역 기본 환경 관리를 참조하세요.
    • 더 보기: 이전 버전 및 사용자 지정 (YAML 파일 지정).
  3. 종속성에서 추가 라이브러리를 추가합니다.
  4. 확인을 클릭합니다.

Note

작업 영역에 작업 미리 보기에 대한 작업 영역 기본 환경이 활성화되지 않은 경우 환경 구성 대화 상자에 기본 환경 대신 환경 버전 드롭다운이 표시됩니다.

환경을 구성하려면 버전을 선택한 다음 + 라이브러리 추가를 클릭합니다. 작업 영역 파일 경로(시작 /Workspace/), Unity 카탈로그 볼륨 경로(시작 /Volumes/) 또는 요구 사항 파일 참조(예 -r /Workspace/path/to/requirements.txt: )를 지정할 수 있습니다.

Dbt 작업

DBT 태스크는 라이브러리 구성에 작업 수준 환경을 사용합니다.

작업 환경 옵션을 보여 주는 dbt 작업에 대한 환경 및 라이브러리 드롭다운

작업 수준 환경을 구성하려면 다음을 수행합니다.

  1. 작업 구성에서 환경 및 라이브러리 드롭다운 메뉴를 클릭합니다.
  2. 작업 환경에서 기존 환경 옆에 있는 연필 아이콘을 클릭하거나 + 새 작업 환경 추가를 클릭합니다.
  3. 환경 구성 대화 상자의 기본 환경 드롭다운 메뉴에서 선택합니다.
    • Databricks environment: StandardML 같은 Azure Databricks 제공 옵션입니다.
    • 작업 영역 환경: 작업 영역 관리자가 구성한 사용자 지정 환경입니다. 작업 영역 기본 환경 관리를 참조하세요.
    • 더 보기: 이전 버전 및 사용자 지정 (YAML 파일 지정).
  4. 종속성에서 추가 라이브러리를 추가합니다. requirements.txt 파일에서 유효한 형식으로 라이브러리를 지정하거나 작업 영역 파일 또는 Unity 카탈로그 볼륨에 대한 절대 경로를 사용할 수 있습니다.
  5. 확인을 클릭합니다.

Note

작업 영역에 작업 미리 보기에 대한 작업 영역 기본 환경이 활성화되지 않은 경우 환경 구성 대화 상자에 기본 환경 대신 환경 버전 드롭다운이 표시됩니다.

환경을 구성하려면 버전을 선택한 다음 + 라이브러리 추가를 클릭합니다. 작업 영역 파일 경로(시작 /Workspace/), Unity 카탈로그 볼륨 경로(시작 /Volumes/) 또는 요구 사항 파일 참조(예 -r /Workspace/path/to/requirements.txt: )를 지정할 수 있습니다.

JAR 태스크

작업 영역 기본 환경은 JAR 작업에 대해 지원되지 않습니다. JAR 작업에 대한 환경을 구성하려면 다음을 수행합니다.

JAR 종속성 추가 링크를 보여 주는 JAR 작업에 대한 환경 및 라이브러리 섹션

  1. 작업 구성의 환경 및 라이브러리에서 + JAR 종속성 추가를 클릭합니다.
  2. 환경 구성 대화 상자에서 다음을 수행합니다.
    • 필요에 따라 기본 환경 필드에 YAML 파일의 경로를 입력합니다.
    • 환경 버전 드롭다운 메뉴에서 환경 버전을 선택합니다.
    • JAR 종속성 아래에서 JAR 파일에 경로를 추가합니다.
  3. 확인을 클릭합니다.

사용자 지정 YAML 기반 기본 환경을 만들려면 사용자 지정 환경 사양 만들기를 참조하세요.

환경 및 컴퓨팅 호환성

선택한 기본 환경은 작업의 컴퓨팅 유형과 호환되어야 합니다. 예를 들어 GPU 컴퓨팅용으로 빌드된 환경은 CPU 컴퓨팅과 호환되지 않습니다. 작업 UI의 기본 환경 드롭다운 메뉴에서 호환되지 않는 환경을 사용할 수 없습니다.

Notebook 작업을 구성할 때 컴퓨팅 유형(CPU 또는 GPU) 및 기본 환경은 각각 작업 설정 또는 Notebook 설정에서 올 수 있습니다.

  • 작업 수준에서 GPU(하드웨어 가속기)를 설정하는 경우 작업 수준에서 기본 환경도 선택해야 합니다. 노트북의 환경은 작업 수준 가속기와 함께 사용할 수 없습니다.
  • Notebook을 참조하는 작업 태스크가 있고 참조된 Notebook의 컴퓨팅 유형(예: CPU에서 GPU로)을 업데이트하는 경우 기존 작업이 구성된 환경과 호환되지 않을 수 있습니다. Notebook의 컴퓨팅 구성을 변경한 후 작업의 환경 설정을 검토합니다.
  • API 사용자의 경우: 작업 수준에서 기본 환경을 설정하지만 Notebook에서 컴퓨팅 유형을 정의하는 경우 Azure Databricks 작업 생성 시간이 아닌 런타임에 호환성의 유효성을 검사합니다. 구성이 호환되지 않으면 실행이 실패하고 오류가 발생합니다.