다음을 통해 공유


Databricks 자산 번들 리소스

Databricks 자산 번들을 사용하면 번들 구성의 resources 매핑에서 번들에서 사용하는 Azure Databricks 리소스에 대한 정보를 지정할 수 있습니다. 리소스 매핑리소스 키 참조를 확인하세요.

이 페이지에서는 번들에 대해 지원되는 모든 리소스 종류에 대한 구성 참조를 제공하고 지원되는 각 유형에 대한 세부 정보 및 예제를 제공합니다. 추가 예제는 번들 구성 예제참조하세요.

YAML 구성의 유효성을 검사하는 데 사용되는 번들에 대한 JSON 스키마는 Databricks CLI GitHub 리포지토리에 있습니다.

Tip

기존 리소스에 대한 YAML을 생성하려면 databricks bundle generate 명령을 사용합니다. databricks 번들 생성을 참조하세요.

지원되는 리소스

다음 표에서는 번들에 대해 지원되는 리소스 종류(해당하는 경우 YAML 및 Python)를 나열합니다. 일부 리소스는 번들에 정의하고 번들을 배포하여 만들 수 있으며, 일부 리소스는 번들에 포함할 기존 자산을 참조해야만 만들 수 있습니다.

리소스 구성은 Databricks REST API 개체에 해당하는 Databricks 개체를 정의합니다. YAML로 표현되는 REST API 개체의 지원되는 만들기 요청 필드는 리소스의 지원되는 키입니다. 각 리소스의 해당 개체에 대한 설명서에 대한 링크는 아래 표에 있습니다.

Tip

databricks bundle validate 명령은 번들 구성 파일에서 알 수 없는 리소스 속성이 발견되면 경고를 반환합니다.

Resource Python 지원 해당 REST API 개체
경고 경고 개체
app 앱 개체
cluster 클러스터 개체
dashboard 대시보드 개체
database_catalog 데이터베이스 카탈로그 개체
database_instance 데이터베이스 인스턴스 개체
experiment 실험 개체
job 직업 작업 개체
모델(레거시) Model(레거시) 개체
model_serving_endpoint 모델 제공 엔드포인트 객체
pipeline Pipelines 파이프라인 개체
quality_monitor 품질 모니터 개체
registered_model(Unity 카탈로그) 등록된 모델 개체
스키마(Unity Catalog) 스키마 스키마 개체
secret_scope 비밀 스코프 객체
sql_warehouse SQL 웨어하우스 개체
동기화된_데이터베이스_테이블 동기화된 데이터베이스 테이블 개체
볼륨 (유니티 카탈로그) 볼륨 볼륨 개체

경고

Type: Map

경고 리소스는 SQL 경고(v2)를 정의합니다.

alerts:
  <alert-name>:
    <alert-field-name>: <alert-field-value>
Key Type Description
custom_description String Optional. 경고에 대한 사용자 지정 설명입니다. 콧수염 템플릿을 지원합니다.
custom_summary String Optional. 경고에 대한 사용자 지정 요약입니다. 콧수염 템플릿을 지원합니다.
display_name String 필수 사항입니다. 경고의 표시 이름입니다(예: .) Example alert.
evaluation Map 필수 사항입니다. 경고에 대한 평가 구성입니다. alert.evaluation을 참조하세요.
parent_path String Optional. 경고가 포함된 폴더의 작업 영역 경로입니다. 만들기에만 설정할 수 있으며 업데이트할 수 없습니다. 예: /Users/someone@example.com.
permissions Sequence 경고 권한입니다. 사용 권한을 참조 하세요.
query_text String 필수 사항입니다. 실행할 쿼리의 텍스트입니다(예: SELECT 1.).
run_as Map Optional. 경고를 실행하는 데 사용할 ID를 지정합니다. 이 필드를 사용하면 경고를 특정 사용자 또는 서비스 주체로 실행하도록 구성할 수 있습니다. run_as 참조하세요.
  • 사용자 ID의 경우: 활성 작업 영역 사용자의 전자 메일로 설정합니다 user_name . 사용자는 이를 자신의 전자 메일로만 설정할 수 있습니다.
  • 서비스 주체의 경우: service_principal_name을(를) 애플리케이션 ID로 설정합니다. 서비스 주체/사용자 역할이 필요합니다. 지정하지 않으면 경고가 요청 사용자로 실행됩니다.
schedule Map 필수 사항입니다. 경고에 대한 일정 구성입니다. alert.schedule을 참조하세요.
warehouse_id String 필수 사항입니다. 경고에 연결된 SQL 웨어하우스의 ID입니다(예: a7066a8ef796be84.).

경고 평가

Type: Map

경고에 대한 평가 구성입니다.

Key Type Description
comparison_operator String 경고 평가에서 비교에 사용되는 연산자입니다.
empty_result_state String 결과가 비어 있는 경우의 경고 상태입니다. UNKNOWN 필드를 설정하지 마십시오, 왜냐하면 UNKNOWN 상태는 더 이상 사용되지 않을 계획입니다.
notification Map 경고가 트리거될 때 알릴 사용자 또는 기타 대상입니다. alert.evaluation.notification을 참조하세요.
source Map 경고를 평가하는 데 사용할 결과의 원본 열입니다. alert.evaluation.source를 참조하세요.
threshold Map 경고 평가에 사용할 임계값입니다. 열 또는 값일 수 있습니다. alert.evaluation.threshold를 참조하세요.

alert.evaluation.notification

Type: Map

경고가 트리거될 때 알릴 사용자 또는 기타 대상입니다.

Key Type Description
notify_on_ok Boolean Optional. 경고가 정상으로 돌아올 때 경고 구독자에게 알릴지 여부입니다.
retrigger_seconds Integer Optional. 다른 알림을 보내기 전에 경고가 트리거된 후 대기하는 시간(초)입니다. 설정 0 하거나 생략하면 경고는 첫 번째 트리거 후에 추가 알림을 보내지 않습니다. 이 값을 설정하면 1 경고가 조건이 충족되는 모든 평가에서 알림을 보낼 수 있으므로 알림 목적으로 항상 다시 시도하게 됩니다.
subscriptions Sequence Optional. 순서가 지정되지 않은 알림 구독 목록입니다. alert.evaluation.notification.subscriptions를 참조하세요.
알림 평가 알림 구독

Type: Sequence

순서가 지정되지 않은 알림 구독 목록입니다.

목록의 각 항목은 AlertSubscription입니다.

Key Type Description
destination_id String 알림 대상의 ID입니다.
user_email String 알릴 사용자의 이메일 주소입니다.

alert.evaluation.source

Type: Map

경고를 평가하는 데 사용할 결과의 원본 열입니다.

Key Type Description
aggregation String 원본 열에 적용할 집계 메서드입니다. 유효한 값은 SUM,, COUNTCOUNT_DISTINCT, AVGMEDIAN, MIN, MAXSTDDEV
display String 원본 열의 표시 이름입니다.
name String 쿼리 결과의 원본 열 이름입니다.

알림.평가.임계값

Type: Map

경고 평가에 사용할 임계값은 열 또는 값일 수 있습니다.

Key Type Description
column Map 임계값으로 사용할 열 참조 기준입니다. alert.evaluation.source를 참조하세요.
value Map 임계값으로 사용할 리터럴 값입니다. alert.evaluation.threshold.value를 참조하세요.
알림.평가.임계값.값

Type: Map

기준치로 사용할 리터럴 값입니다. 다음 값 형식 중 하나를 지정합니다.

Key Type Description
bool_value Boolean Optional. 임계값에 대한 부울 값, 예를 들어 true와 같은 값입니다.
double_value Double Optional. 임계값의 숫자 값입니다(예: .) 1.25.
string_value String Optional. 임계값에 대한 문자열 값(예: .) test

경고.일정

Type: Map

경고에 대한 일정 구성입니다.

Key Type Description
pause_status String Optional. 이 일정이 일시 중지되었는지 여부입니다. 유효한 값: UNPAUSED, . PAUSED 기본값: UNPAUSED.
quartz_cron_schedule String 필수 사항입니다. 이 파이프라인의 일정을 지정하는 Quartz 구문을 사용하는 cron 식입니다. 쿼츠 형식은 쿼츠 스케줄러 형식으로 설명됩니다.
timezone_id String 필수 사항입니다. Java 표준 시간대 ID입니다. 일정은 이 표준 시간대를 사용하여 해결됩니다. 일정을 결정하기 위해 이 항목과 quartz_cron_schedule 결합됩니다. 자세한 내용은 SET TIME ZONE를 참조하세요.

Examples

다음 예제 구성은 간단한 평가로 경고를 정의합니다.

resources:
  alerts:
    my_alert:
      display_name: my_alert
      evaluation:
        comparison_operator: EQUAL
        source:
          name: '1'
        threshold:
          value:
            double_value: 2
      query_text: select 2
      schedule:
        quartz_cron_schedule: '44 19 */1 * * ?'
        timezone_id: Europe/Amsterdam
      warehouse_id: 799f096837fzzzz4

다음 예제 구성은 집계를 사용하여 평가하고 알림을 보내는 권한이 있는 경고를 정의합니다.

resources:
  alerts:
    my_alert:
      permissions:
        - level: CAN_MANAGE
          user_name: someone@example.com
      custom_summary: 'My alert'
      display_name: 'My alert'
      evaluation:
        comparison_operator: 'EQUAL'
        notification:
          notify_on_ok: false
          retrigger_seconds: 1
        source:
          aggregation: 'MAX'
          display: '1'
          name: '1'
        threshold:
          value:
            double_value: 2
      query_text: 'select 2'
      schedule:
        pause_status: 'UNPAUSED'
        quartz_cron_schedule: '44 19 */1 * * ?'
        timezone_id: 'Europe/Amsterdam'
      warehouse_id: 799f096837fzzzz4

Type: Map

앱 리소스는 Databricks 앱을 정의합니다. Databricks 앱에 대한 자세한 내용은 Databricks 앱을 참조하세요.

앱을 추가하려면 필요한 앱을 포함하여 앱을 정의할 설정을 지정합니다 source_code_path.

Tip

다음 명령을 사용하여 Streamlit Databricks 앱을 통해 번들을 초기화할 수 있습니다.

databricks bundle init https://github.com/databricks/bundle-examples --template-dir contrib/templates/streamlit-app
apps:
  <app-name>:
    <app-field-name>: <app-field-value>
Key Type Description
budget_policy_id String 앱의 예산 정책 ID입니다.
compute_size String 앱의 컴퓨팅 크기입니다. 유효한 값은 MEDIUMLARGE 작업 영역 구성에 따라 다릅니다.
config Map Deprecated. 대신 app.yaml 파일에서 앱 구성 명령 및 환경 변수를 정의합니다. Databricks 앱 구성을 참조하세요.
description String 앱에 대한 설명입니다.
lifecycle Map 리소스가 배포되거나 제거될 때의 동작입니다. 수명 주기를 참조하세요.
name String 앱의 이름입니다. 이름에는 소문자 영숫자 및 하이픈만 포함되어야 합니다. 작업 영역 내에서 고유해야 합니다.
permissions Sequence 앱의 권한입니다. 사용 권한을 참조 하세요.
resources Sequence 앱의 컴퓨트 리소스. app.resources를 참조하세요.
source_code_path String ./app Databricks 앱 소스 코드의 로컬 경로입니다.
user_api_scopes Sequence 사용자 API 범위입니다.

앱 리소스

Type: Sequence

앱에 대한 컴퓨팅 리소스 목록입니다.

목록의 각 항목은 AppResource입니다.

Key Type Description
description String 앱 리소스에 대한 설명입니다.
database Map 사용할 Lakebase 데이터베이스를 식별하는 설정입니다. app.resources.database를 참조하세요.
genie_space Map 사용할 지니 공간을 식별하는 설정입니다. app.resources.genie_space 참조하세요.
job Map 사용할 작업 리소스를 식별하는 설정입니다. app.resources.job을 참조하세요.
name String 앱 리소스의 이름입니다.
secret Map 사용할 Azure Databricks 비밀 리소스를 식별하는 설정입니다. app.resources.secret을 참조하세요.
serving_endpoint Map 사용할 엔드포인트 리소스를 제공하는 모델을 식별하는 설정입니다. app.resources.serving_endpoint 참조하세요.
sql_warehouse Map 사용할 SQL 웨어하우스 리소스를 식별하는 설정입니다. app.resources.sql_warehouse를 참조하세요.
uc_securable Map 사용할 Unity 카탈로그 볼륨을 식별하는 설정입니다. app.resources.uc_securable 참조하세요.

애플리케이션.자원.데이터베이스

Type: Map

사용할 Lakebase 데이터베이스를 식별하는 설정입니다.

Key Type Description
database_name String 데이터베이스의 이름입니다.
instance_name String 데이터베이스 인스턴스의 이름입니다.
permission String 데이터베이스에 대한 사용 권한 수준입니다. 유효한 값은 CAN_CONNECT_AND_CREATE입니다.

app.resources.genie_space

Type: Map

사용할 지니 공간을 식별하는 설정입니다.

Key Type Description
name String 지니 공간의 이름입니다.
permission String 공간에 대한 사용 권한 수준입니다. 유효한 값에는 , CAN_VIEW, CAN_EDITCAN_MANAGE등이 있습니다CAN_RUN.
space_id String 예를 들어 550e8400-e29b-41d4-a716-999955440000지니 공간의 ID입니다.

app.resources.job

Type: Map

사용할 작업 리소스를 식별하는 설정입니다.

Key Type Description
id String 작업 ID입니다.
permission String 작업에 대한 사용 권한 수준입니다. 유효한 값에는 , CAN_VIEW, CAN_MANAGE_RUNCAN_MANAGE등이 있습니다IS_OWNER.

앱.리소스.시크릿

Type: Map

사용할 Azure Databricks 비밀 리소스를 식별하는 설정입니다.

Key Type Description
key String 권한을 부여할 비밀의 키입니다.
permission String 비밀에 대한 권한 수준입니다. 유효한 값에는 READ, . WRITEMANAGE
scope String 비밀 범위의 이름입니다.

앱.리소스.서비스_엔드포인트

Type: Map

사용할 엔드포인트 리소스를 제공하는 모델을 식별하는 설정입니다.

Key Type Description
name String 제공 엔드포인트의 이름입니다.
permission String 서비스 엔드포인트에 대한 권한 수준입니다. 유효한 값에는 CAN_QUERY, . CAN_MANAGECAN_VIEW

app.resources.sql_warehouse

Type: Map

사용할 SQL 웨어하우스를 식별하는 설정입니다.

Key Type Description
id String SQL 웨어하우스의 ID입니다.
permission String SQL 웨어하우스에 대한 권한 수준입니다. 유효한 값에는 CAN_USE, . CAN_MANAGEIS_OWNER

app.resources.uc_securable (사용 가능한 보안 설정 리소스)

Type: Map

사용할 Unity 카탈로그 볼륨을 식별하는 설정입니다.

Key Type Description
permission String Unity 카탈로그 보안 개체에 대한 사용 권한 수준입니다. 유효한 값은 READ_VOLUMEWRITE_VOLUME입니다.
securable_full_name String Unity 카탈로그에서 보안 가능한 개체의 전체 이름은 형식 catalog.schema.volume입니다.
securable_type String Unity 카탈로그 보안 개체의 형식입니다. 유효한 값은 VOLUME입니다.

Example

다음 예제에서는 번들로 만든 작업을 관리하는 my_app 앱을 만듭니다.

resources:
  jobs:
    # Define a job in the bundle
    hello_world:
      name: hello_world
      tasks:
        - task_key: task
          spark_python_task:
            python_file: ../src/main.py
          environment_key: default

      environments:
        - environment_key: default
          spec:
            environment_version: '2'

  # Define an app that manages the job in the bundle
  apps:
    job_manager:
      name: 'job_manager_app'
      description: 'An app which manages a job created by this bundle'

      # The location of the source code for the app
      source_code_path: ../src/app

      # The resources in the bundle which this app has access to. This binds the resource in the app with the bundle resource.
      resources:
        - name: 'app-job'
          job:
            id: ${resources.jobs.hello_world.id}
            permission: 'CAN_MANAGE_RUN'

해당 app.yaml 앱을 실행하기 위한 구성을 정의합니다.

command:
  - flask
  - --app
  - app
  - run
  - --debug
env:
  - name: JOB_ID
    valueFrom: 'app-job'

전체 Databricks 앱 예제 번들은 번들 예제 GitHub 리포지토리를 참조하세요.

클러스터

Type: Map

클러스터 리소스는 클러스터를 정의합니다.

clusters:
  <cluster-name>:
    <cluster-field-name>: <cluster-field-value>
Key Type Description
apply_policy_default_values Boolean true로 설정하면 정책의 고정 및 기본값이 생략된 필드에 사용됩니다. false로 설정하면 정책의 고정 값만 적용됩니다.
autoscale Map 부하에 따라 클러스터를 자동으로 확장 및 축소하는 데 필요한 매개 변수입니다. 자동 크기 조정을 참조하세요.
autotermination_minutes Integer 지정된 시간(분) 동안 비활성 상태인 경우 클러스터를 자동으로 종료합니다. 설정하지 않으면 이 클러스터가 자동으로 종료되지 않습니다. 지정된 경우 임계값은 10분에서 10000분 사이여야 합니다. 사용자는 자동 종료를 명시적으로 사용하지 않도록 설정하기 위해 이 값을 0으로 설정할 수도 있습니다.
aws_attributes Map Amazon Web Services에서 실행되는 클러스터와 관련된 특성입니다. 클러스터를 만들 때 지정하지 않으면 기본값 집합이 사용됩니다. aws_attributes 참조하세요.
azure_attributes Map Microsoft Azure에서 실행되는 클러스터와 관련된 특성입니다. 클러스터를 만들 때 지정하지 않으면 기본값 집합이 사용됩니다. azure_attributes 참조하세요.
cluster_log_conf Map Spark 로그를 장기 스토리지 대상으로 배달하기 위한 구성입니다. cluster_log_conf 참조하세요.
cluster_name String 사용자가 요청한 클러스터 이름입니다. 고유할 필요는 없습니다. 만들 때 지정하지 않으면 클러스터 이름은 빈 문자열이 됩니다.
custom_tags Map 클러스터 리소스를 위한 추가 태그. Databricks는 default_tags 외에도 모든 클러스터 리소스(예: AWS 인스턴스 및 EBS 볼륨)에 이러한 태그를 지정합니다.
data_security_mode String 클러스터에서 데이터에 액세스할 때 사용할 데이터 거버넌스 모델입니다. 유효한 값에는 ,NONE, SINGLE_USER, USER_ISOLATIONLEGACY_SINGLE_USERLEGACY_TABLE_ACL, 등이 있습니다.LEGACY_PASSTHROUGH
docker_image Map 사용자 지정 Docker 이미지입니다. docker_image 참조하세요.
driver_instance_pool_id String 클러스터 드라이버에 대한 인스턴스 풀의 선택적 ID가 속합니다. 드라이버 풀이 할당되지 않은 경우 풀 클러스터는 id(instance_pool_id)가 있는 인스턴스 풀을 사용합니다.
driver_node_type_id String Spark 드라이버의 노드 형식입니다. 이 필드는 선택 사항입니다. 설정되지 않은 경우 드라이버 노드 형식은 위에서 정의한 값과 동일한 값으로 node_type_id 설정됩니다. virtual_cluster_size 설정된 경우 이 필드는 node_type_id 함께 설정하면 안 됩니다. driver_node_type_id, node_type_id 및 virtual_cluster_size 모두 지정되면 driver_node_type_id 및 node_type_id 우선합니다.
enable_elastic_disk Boolean 로컬 스토리지 자동 크기 조정: 사용하도록 설정하면 Spark 작업자가 디스크 공간이 부족할 때 이 클러스터는 추가 디스크 공간을 동적으로 확보합니다. 이 기능을 사용하려면 특정 AWS 권한이 올바르게 작동해야 합니다. 자세한 내용은 사용자 가이드를 참조하세요.
enable_local_disk_encryption Boolean 클러스터 VM의 로컬 디스크에서 LUKS를 사용하도록 설정할지 여부
gcp_attributes Map Google Cloud Platform에서 실행되는 클러스터와 관련된 특성입니다. 클러스터를 만들 때 지정하지 않으면 기본값 집합이 사용됩니다. gcp_attributes 참조하세요.
init_scripts Sequence init 스크립트를 저장하기 위한 구성입니다. 어떤 수의 목적지도 지정할 수 있습니다. 스크립트는 제공된 순서대로 순차적으로 실행됩니다. init_scripts 참조하세요.
instance_pool_id String 클러스터가 속한 인스턴스 풀의 선택적 ID입니다.
is_single_node Boolean 이 필드는 다음과 같은 경우에만 kind = CLASSIC_PREVIEW사용할 수 있습니다. true로 설정하면, Databricks는 자동으로 단일 노드와 관련된 custom_tags, spark_conf, num_workers를 설정합니다.
kind String 이 컴퓨팅 사양에서 설명하는 컴퓨팅 종류입니다.
node_type_id String 이 필드는 단일 값을 통해 이 클러스터의 각 Spark 노드에서 사용할 수 있는 리소스를 인코딩합니다. 예를 들어, Spark 노드는 메모리 또는 컴퓨팅 집약적 워크로드에 대해 프로비저닝되고 최적화될 수 있습니다. 사용 가능한 노드 형식 목록은 :method:clusters/listNodeTypes API 호출을 사용하여 검색할 수 있습니다.
num_workers Integer 이 클러스터에 있어야 하는 작업자 노드의 수입니다. 클러스터에는 총 num_workers 1개 이상의 Spark 노드에 대해 하나의 Spark 드라이버 및 num_workers 실행기가 있습니다.
permissions Sequence 클러스터 권한입니다. 사용 권한을 참조 하세요.
policy_id String 해당하는 경우 클러스터를 만드는 데 사용되는 클러스터 정책의 ID입니다.
runtime_engine String 클러스터의 런타임 엔진을 STANDARD 또는 PHOTON 중에서 결정합니다.
single_user_name String data_security_mode 경우 단일 사용자 이름 SINGLE_USER
spark_conf Map 선택적 사용자 지정 Spark 구성 키-값 쌍 집합을 포함하는 개체입니다. 사용자는 추가 JVM 옵션 문자열을 각각 통해 spark.driver.extraJavaOptionsspark.executor.extraJavaOptions 드라이버 및 실행기에 전달할 수도 있습니다.
spark_env_vars Map 선택적 사용자 지정 환경 변수 키-값 쌍 집합을 포함하는 개체입니다.
spark_version String 클러스터의 Spark 버전(예: 3.3.x-scala2.11 사용 가능한 Spark 버전 목록은 :method:clusters/sparkVersions API 호출을 사용하여 검색할 수 있습니다.
ssh_public_keys Sequence 이 클러스터의 각 Spark 노드에 추가될 SSH 공개 키 콘텐츠입니다. 해당 프라이빗 키를 사용하여 포트ubuntu에서 사용자 이름으로 2200 로그인할 수 있습니다. 최대 10 개의 키를 지정할 수 있습니다.
use_ml_runtime Boolean 이 필드는 다음과 같은 경우에만 kind = CLASSIC_PREVIEW사용할 수 있습니다. effective_spark_versionspark_version (DBR 릴리스), 이 필드 use_ml_runtime, 그리고 node_type_id가 gpu 노드인지 여부에 따라 결정됩니다.
workload_type Map 클러스터 워크로드 유형에 대해 표시되는 클러스터 특성입니다. workload_type 참조하세요.

클러스터.오토스케일링

Type: Map

부하에 따라 클러스터를 자동으로 확장 및 축소하기 위한 매개 변수입니다.

Key Type Description
min_workers Integer 사용량이 부족할 때 클러스터를 축소할 수 있는 최소 작업자 수입니다. 또한 클러스터를 만든 후 갖게 될 초기 작업자 수이기도 합니다.
max_workers Integer 오버로드 시 클러스터가 확장될 수 있는 최대 작업자 수입니다. max_workers 는 엄밀히 말하면 .보다 min_workers커야 합니다.

클러스터.AWS 속성

Type: Map

Amazon Web Services에서 실행되는 클러스터와 관련된 특성입니다.

Key Type Description
zone_id String 클러스터가 있는 가용성 영역/데이터 센터의 식별자입니다. 이 문자열은 다음과 같은 us-west-2a형식입니다.
availability String 이후의 모든 노드에 first_on_demand 외의 가용성 유형이 사용됩니다. 유효한 값은 SPOT, ON_DEMAND. SPOT_WITH_FALLBACK
spot_bid_price_percent Integer AWS 스폿 인스턴스의 최대 가격(해당 인스턴스 유형의 주문형 가격 백분율)입니다.
instance_profile_arn String 이 클러스터의 노드는 이 인스턴스 프로필을 사용하는 AWS 인스턴스에만 배치됩니다.
first_on_demand Integer 클러스터의 첫 번째 first_on_demand 노드는 주문형 인스턴스에 배치됩니다. 클러스터 드라이버 노드가 주문형 인스턴스에 배치되도록 하려면 이 값이 보다 0커야 합니다.
ebs_volume_type String 이 클러스터와 함께 시작될 EBS 볼륨의 유형입니다. 유효한 값은 GENERAL_PURPOSE_SSD 또는 THROUGHPUT_OPTIMIZED_HDD.
ebs_volume_count Integer 각 인스턴스에 대해 시작된 볼륨 수입니다.
ebs_volume_size Integer 각 인스턴스에 대해 시작된 각 EBS 볼륨의 크기(GiB)입니다.
ebs_volume_iops Integer EBS gp3 볼륨당 IOPS 수입니다.
ebs_volume_throughput Integer 초당 MiB인 EBS gp3 볼륨당 처리량입니다.

클러스터.애저_속성

Type: Map

Microsoft Azure에서 실행되는 클러스터와 관련된 특성입니다.

Key Type Description
first_on_demand Integer 클러스터의 첫 번째 first_on_demand 노드는 주문형 인스턴스에 배치됩니다.
availability String 이후의 모든 노드에 first_on_demand 외의 가용성 유형이 사용됩니다. 유효한 값은 SPOT_AZURE, ON_DEMAND_AZURE. SPOT_WITH_FALLBACK_AZURE
spot_bid_max_price Number Azure 스폿 인스턴스의 최대 가격입니다. 최저 가격을 지정하는 데 사용합니다 -1 .

클러스터.gcp_속성

Type: Map

Google Cloud Platform에서 실행되는 클러스터와 관련된 특성입니다.

Key Type Description
use_preemptible_executors Boolean 선점 실행기를 사용할지 여부입니다. 선점 가능한 실행기는 GCE에서 언제든지 회수할 수 있는 선점 가능한 GCE 인스턴스입니다.
google_service_account String Databricks 클러스터 VM 인스턴스에서 사용할 Google 서비스 계정입니다.
local_ssd_count Integer 클러스터의 각 노드에 연결할 로컬 SSD의 수입니다. 기본값은 0입니다.
zone_id String 클러스터가 있는 가용성 영역/데이터 센터의 식별자입니다.
availability String 모든 노드에 사용되는 가용성 유형입니다. 유효한 값은 PREEMPTIBLE_GCP, ON_DEMAND_GCP. PREEMPTIBLE_WITH_FALLBACK_GCP
boot_disk_size Integer 부팅 디스크의 크기(GB)입니다. 값의 범위는 일반적으로 100에서 1000까지입니다.

cluster.cluster_log_conf

Spark 로그를 장기 스토리지 대상으로 배달하기 위한 구성입니다.

Key Type Description
dbfs Map 클러스터 로그 배달을 위한 DBFS 위치입니다. dbfs를 참조하세요.
s3 Map 클러스터 로그 배달을 위한 S3 위치입니다. s3을 참조하세요.
volumes Map 클러스터 로그 배달을 위한 볼륨 위치입니다. 볼륨을 참조하세요.

cluster.cluster_log_conf.dbfs

Type: Map

클러스터 로그 배달을 위한 DBFS 위치입니다.

Key Type Description
destination String 클러스터 로그 배달을 위한 DBFS 경로입니다(예: dbfs:/cluster-logs).

cluster.cluster_log_conf.s3

Type: Map

클러스터 로그 배달을 위한 S3 위치입니다.

Key Type Description
destination String 클러스터 로그 배달을 위한 S3 URI(예: s3://my-bucket/cluster-logs)입니다.
region String S3 버킷의 AWS 지역입니다.
endpoint String S3 엔드포인트 URL(선택 사항)입니다.
enable_encryption Boolean 클러스터 로그에 암호화를 사용하도록 설정할지 여부입니다.
encryption_type String 암호화 유형입니다. 유효한 값에는 SSE_S3, SSE_KMS이(가) 포함됩니다.
kms_key String 암호화를 위한 KMS 키 ARN입니다(SSE_KMS을/를 사용할 때).
canned_acl String 클러스터 로그에 적용할 기본 설정된 ACL입니다.

cluster.cluster_log_conf.volumes

Type: Map

클러스터 로그 배달을 위한 볼륨 위치입니다.

Key Type Description
destination String 클러스터 로그 배달(예: /Volumes/catalog/schema/volume/cluster_log)에 대한 볼륨 경로입니다.

cluster.docker_image

Type: Map

사용자 지정 Docker 이미지 구성입니다.

Key Type Description
url String Docker 이미지의 URL입니다.
basic_auth Map Docker 리포지토리에 대한 기본 인증입니다. basic_auth 참조하세요.

클러스터.docker_image.기본 인증

Type: Map

Docker 리포지토리에 대한 기본 인증입니다.

Key Type Description
username String Docker 레지스트리 인증의 사용자 이름입니다.
password String Docker 레지스트리 인증에 대한 암호입니다.

cluster.init_scripts

Type: Map

init 스크립트를 저장하기 위한 구성입니다. 하나 이상의 위치 유형을 지정해야 합니다.

Key Type Description
dbfs Map init 스크립트의 DBFS 위치입니다. dbfs를 참조하세요.
workspace Map init 스크립트의 작업 영역 위치입니다. 작업 영역을 참조하십시오.
s3 Map init 스크립트의 S3 위치입니다. s3을 참조하세요.
abfss Map init 스크립트의 ABFSS 위치입니다. abfss를 참조하세요.
gcs Map init 스크립트의 GCS 위치입니다. gcs를 참조하세요.
volumes Map init 스크립트의 UC 볼륨 위치입니다. 볼륨을 참조하세요.

cluster.init_scripts.dbfs

Type: Map

init 스크립트의 DBFS 위치입니다.

Key Type Description
destination String init 스크립트의 DBFS 경로입니다.

cluster.init_scripts.workspace

Type: Map

init 스크립트의 작업 영역 위치입니다.

Key Type Description
destination String init 스크립트의 작업 영역 경로입니다.

cluster.init_scripts.s3

Type: Map

init 스크립트의 S3 위치입니다.

Key Type Description
destination String init 스크립트의 S3 URI입니다.
region String S3 버킷의 AWS 지역입니다.
endpoint String S3 엔드포인트 URL(선택 사항)입니다.

cluster.init_scripts.abfss

Type: Map

init 스크립트의 ABFSS 위치입니다.

Key Type Description
destination String init 스크립트의 ABFSS 경로입니다.

cluster.init_scripts.gcs

Type: Map

init 스크립트의 GCS 위치입니다.

Key Type Description
destination String init 스크립트의 GCS 경로입니다.

cluster.init_scripts.volumes

Type: Map

init 스크립트의 볼륨 위치

Key Type Description
destination String init 스크립트의 UC 볼륨 경로입니다.

cluster.작업_유형

Type: Map

클러스터 워크로드 유형을 보여 주는 클러스터 특성입니다.

Key Type Description
clients Map 클러스터를 사용할 수 있는 클라이언트 유형을 정의합니다. 클라이언트를 참조하세요.

cluster.workload_type.클라이언트

Type: Map

이 컴퓨팅 워크로드에 대한 클라이언트 유형입니다.

Key Type Description
jobs Boolean 클러스터에서 작업을 실행할 수 있는지 여부입니다.
notebooks Boolean 클러스터에서 Notebook을 실행할 수 있는지 여부입니다.

Examples

다음 예제에서는 Databricks Runtime 15.4 LTS 및 클러스터 정책을 사용하여 현재 사용자에 대한 전용(단일 사용자) 클러스터를 만듭니다.

resources:
  clusters:
    my_cluster:
      num_workers: 0
      node_type_id: 'i3.xlarge'
      driver_node_type_id: 'i3.xlarge'
      spark_version: '15.4.x-scala2.12'
      spark_conf:
        'spark.executor.memory': '2g'
      autotermination_minutes: 60
      enable_elastic_disk: true
      single_user_name: ${workspace.current_user.userName}
      policy_id: '000128DB309672CA'
      enable_local_disk_encryption: false
      data_security_mode: SINGLE_USER
      runtime_engine": STANDARD

이 예제에서는 간단한 클러스터 my_cluster를 만들고, 이를 my_job에서 Notebook을 실행하기 위한 클러스터로 설정합니다.

bundle:
  name: clusters

resources:
  clusters:
    my_cluster:
      num_workers: 2
      node_type_id: 'i3.xlarge'
      autoscale:
        min_workers: 2
        max_workers: 7
      spark_version: '13.3.x-scala2.12'
      spark_conf:
        'spark.executor.memory': '2g'

  jobs:
    my_job:
      tasks:
        - task_key: test_task
          notebook_task:
            notebook_path: './src/my_notebook.py'
          existing_cluster_id: ${resources.clusters.my_cluster.id}

대시보드

Type: Map

대시보드 리소스를 사용하면 AI/BI 대시보드를 번들로 관리할 수 있습니다. AI/BI 대시보드에 대한 자세한 내용은 대시보드참조하세요.

로컬 환경에서 대시보드가 포함된 번들을 배포한 다음 UI를 사용하여 해당 대시보드를 수정한 경우 UI를 통해 수정한 내용은 명시적으로 업데이트 bundle generate하지 않는 한 로컬 번들의 대시보드 JSON 파일에 적용되지 않습니다. --watch 옵션을 사용하여 대시보드에 대한 변경 내용을 지속적으로 폴링하고 검색할 수 있습니다. databricks 번들 생성을 참조하세요.

또한 원격 작업 영역에 있는 것과 다른 대시보드 JSON 파일이 포함된 로컬 환경에서 번들을 배포하려고 하면 오류가 발생합니다. 원격 작업 영역의 대시보드를 로컬 대시보드로 강제로 배포하고 덮어쓰려면 --force 옵션을 사용합니다. databricks 번들 배포를 참조하세요.

Note

대시보드 Git 지원과 함께 Databricks 자산 번들을 사용하는 경우 대시보드가 파일로 동기화되지 않도록 동기화 매핑을 추가하여 중복 대시보드가 생성되지 않도록 합니다.

sync:
  exclude:
    - src/*.lvdash.json
dashboards:
  <dashboard-name>:
    <dashboard-field-name>: <dashboard-field-value>
Key Type Description
display_name String 대시보드의 표시 이름입니다.
embed_credentials Boolean 번들 배포 ID 자격 증명을 사용하여 모든 대시보드 뷰어에 대한 쿼리를 실행할지 여부입니다. 설정된 false경우 뷰어의 자격 증명이 사용됩니다. 기본값은 false입니다.
etag String 대시보드의 "etag"입니다. 대시보드가 마지막으로 읽은 이후 수정되지 않았는지 확인하기 위해 업데이트에 선택적으로 제공할 수 있습니다.
file_path String 파일 이름을 포함하여 대시보드 자산의 로컬 경로입니다. 내보낸 대시보드에는 항상 파일 확장 .lvdash.json명이 있습니다.
permissions Sequence 대시보드 권한입니다. 사용 권한을 참조 하세요.
serialized_dashboard Any serialize된 문자열 형식의 대시보드 내용입니다.
warehouse_id String 대시보드를 실행하는 데 사용되는 웨어하우스 ID입니다.

Example

예시는 NYC Taxi Trip Analysis 대시보드를 Databricks 작업 영역으로 포함하고 배포합니다.

resources:
  dashboards:
    nyc_taxi_trip_analysis:
      display_name: 'NYC Taxi Trip Analysis'
      file_path: ../src/nyc_taxi_trip_analysis.lvdash.json
      warehouse_id: ${var.warehouse_id}

데이터베이스 카탈로그

Type: Map

데이터베이스 카탈로그 리소스를 사용하면 번들의 데이터베이스 인스턴스 해당하는 데이터베이스 카탈로그를 정의할 수 있습니다. 데이터베이스 카탈로그는 Unity 카탈로그 카탈로그로 등록된 Lakebase 데이터베이스입니다.

데이터베이스 카탈로그에 대한 자세한 내용은 카탈로그 만들기를 참조하세요.

database_catalogs:
  <database_catalog-name>:
    <database_catalog-field-name>: <database_catalog-field-value>
Key Type Description
create_database_if_not_exists Boolean 데이터베이스가 없는 경우 데이터베이스를 만들지 여부를 지정합니다.
database_instance_name String 데이터베이스를 수용하는 인스턴스의 이름입니다.
database_name String 카탈로그와 연결된 데이터베이스의 이름(인스턴스)입니다.
lifecycle Map 리소스가 배포되거나 제거될 때의 동작을 포함하여 리소스에 대한 수명 주기 설정을 포함합니다. 수명 주기를 참조하세요.
name String Unity 카탈로그의 카탈로그 이름입니다.

Example

다음 예제에서는 해당 데이터베이스 카탈로그를 사용하여 데이터베이스 인스턴스 를 정의합니다.

resources:
  database_instances:
    my_instance:
      name: my-instance
      capacity: CU_1
  database_catalogs:
    my_catalog:
      database_instance_name: ${resources.database_instances.my_instance.name}
      name: example_catalog
      database_name: my_database
      create_database_if_not_exists: true

데이터베이스_인스턴스

Type: Map

데이터베이스 인스턴스 리소스를 사용하면 번들에 데이터베이스 인스턴스를 정의할 수 있습니다. Lakebase 데이터베이스 인스턴스는 스토리지 및 컴퓨팅 리소스를 관리하고 사용자가 연결하는 엔드포인트를 제공합니다.

중요합니다

데이터베이스 인스턴스를 사용하여 번들을 배포하면 인스턴스가 즉시 실행되고 가격 책정이 적용됩니다. Lakebase 가격 책정을 참조하세요.

데이터베이스 인스턴스에 대한 자세한 내용은 데이터베이스 인스턴스란?을 참조하세요.

database_instances:
  <database_instance-name>:
    <database_instance-field-name>: <database_instance-field-value>
Key Type Description
capacity String 인스턴스의 sku입니다. 유효한 값은 CU_1, CU_2, CU_4, CU_8.
custom_tags Sequence 인스턴스와 연결된 사용자 지정 태그를 지정하는 키-값 쌍의 목록입니다.
enable_pg_native_login Boolean 인스턴스에 PG 네이티브 암호 로그인이 활성화되어 있는지 여부입니다. 기본값은 true입니다.
enable_readable_secondaries Boolean 보조 복제본이 읽기 전용 트래픽을 제공하도록 설정할지 여부입니다. 기본값은 false입니다.
lifecycle Map 리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다. 수명 주기를 참조하세요.
name String 인스턴스의 이름입니다. 인스턴스의 고유 식별자입니다.
node_count Integer 1개의 주 노드와 0개 이상의 보조 복제본으로 구성된 인스턴스의 노드 수입니다. 기본값은 1개의 주 복제본과 0개의 보조 복제본으로 설정됩니다.
parent_instance_ref Map 부모 인스턴스의 참조입니다. 인스턴스가 자식 인스턴스인 경우에만 사용할 수 있습니다. 부모 인스턴스를 참조하세요.
permissions Sequence 데이터베이스 인스턴스의 권한입니다. 사용 권한을 참조 하세요.
retention_window_in_days Integer 인스턴스의 보존 기간입니다. 기록 데이터가 보존되는 기간(일)입니다. 기본값은 7일입니다. 유효한 값은 2~35일입니다.
stopped Boolean 인스턴스가 중지되었는지 여부입니다.
usage_policy_id String 인스턴스와 연결할 원하는 사용 정책입니다.

데이터베이스_인스턴스의 기본_인스턴스_참조

Type: Map

부모 인스턴스의 참조입니다. 인스턴스가 자식 인스턴스인 경우에만 사용할 수 있습니다.

Key Type Description
branch_time String ref 데이터베이스 인스턴스의 분기 시간입니다. 부모 ref 인스턴스의 경우 인스턴스가 만들어진 부모 인스턴스의 지정 시간입니다. 자식 참조 인스턴스의 경우, 이는 자식 인스턴스가 생성된 참조 인스턴스의 시점입니다.
lsn String 참조 데이터베이스 인스턴스의 사용자 지정 WAL LSN입니다.
name String ref 데이터베이스 인스턴스의 이름입니다.

Example

다음 예제에서는 해당 데이터베이스 카탈로그를 사용하여 데이터베이스 인스턴스를 정의합니다.

resources:
  database_instances:
    my_instance:
      name: my-instance
      capacity: CU_1
  database_catalogs:
    my_catalog:
      database_instance_name: ${resources.database_instances.my_instance.name}
      name: example_catalog
      database_name: my_database
      create_database_if_not_exists: true

데이터베이스 인스턴스 및 해당 데이터베이스 카탈로그를 정의하는 방법을 보여 주는 예제 번들은 번들 예제 GitHub 리포지토리를 참조하세요.

실험

Type: Map

실험 리소스를 사용하면 패키지에 MLflow 실험을 정의할 수 있습니다. MLflow 실험과 관련된 정보를 얻으려면 MLflow 실험을 사용하여 학습 실행을 구성하는 방법을 참조하세요.

experiments:
  <experiment-name>:
    <experiment-field-name>: <experiment-field-value>
Key Type Description
artifact_location String 실험의 아티팩트가 저장되는 위치입니다.
lifecycle Map 리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다. 수명 주기를 참조하세요.
name String 실험을 식별하는 식별 이름입니다. 실험 이름은 Databricks 작업 영역의 절대 경로여야 합니다. 예를 들면 다음과 같습니다 /Workspace/Users/someone@example.com/my_experiment.
permissions Sequence 실험에 대한 권한입니다. 사용 권한을 참조 하세요.
tags Sequence 추가 메타데이터 키-값 쌍들. 태그를 참조하세요.

Example

다음 예제에서는 모든 사용자가 볼 수 있는 실험을 정의합니다.

resources:
  experiments:
    experiment:
      name: /Workspace/Users/someone@example.com/my_experiment
      permissions:
        - level: CAN_READ
          group_name: users
      description: MLflow experiment used to track runs

작업

Type: Map

작업은 Databricks 자산 번들에 대해 Python을 통해 지원됩니다. databricks.bundles.jobs 참조하세요.

번들에서 작업과 해당 작업에 연결된 태스크를 정의할 수 있도록 작업 리소스를 사용하십시오.

작업에 대한 자세한 내용은 Lakeflow 작업을 참조하세요. Databricks 자산 번들 템플릿을 사용하여 작업을 만드는 자습서는 Databricks 자산 번들을 사용하여 작업 개발을 참조하세요.

jobs:
  <job-name>:
    <job-field-name>: <job-field-value>
Key Type Description
budget_policy_id String 이 작업에 사용할 사용자 지정 예산 정책의 ID입니다. 지정하지 않으면 작업을 만들거나 수정할 때 기본 예산 정책이 적용될 수 있습니다. 이 워크로드에서 사용하는 예산 정책을 참조 effective_budget_policy_id 하세요.
continuous Map 이 작업에 대한 선택적 연속 속성입니다. 연속 속성은 항상 하나의 실행이 실행되도록 합니다. schedulecontinuous 중 하나만 사용할 수 있습니다. 연속을 참조하십시오.
deployment Map 외부 원본에서 관리하는 작업에 대한 배포 정보입니다. 배포를 참조하세요.
description String 작업에 대한 선택적 설명입니다. 최대 길이는 UTF-8 인코딩에서 27700자입니다.
edit_mode String 작업 편집 모드는 UI_LOCKED 또는 EDITABLE 중 하나입니다.
email_notifications Map 이 작업의 실행이 시작되거나 완료될 때와 이 작업이 삭제될 때 알림을 수신하는 선택적 전자 메일 주소 집합입니다. email_notifications 참조하세요.
environments Sequence 이 작업의 서버리스 작업에서 참조할 수 있는 작업 실행 환경 사양 목록입니다. 서버리스 작업에는 환경이 있어야 합니다. 서버리스 Notebook 작업의 경우 Notebook 환경 패널에서 환경에 액세스할 수 있습니다. 다른 서버리스 작업의 경우 작업 설정에서 environment_key 사용하여 작업 환경을 지정해야 합니다. 환경을 참조하세요.
format String Deprecated. 작업의 형식입니다.
git_source Map 태스크에서 사용하는 소스 코드를 포함하는 원격 Git 리포지토리에 대한 선택적 사양입니다. job.git_source 참조하세요.
중요하다: 로컬 상대 경로가 git_source Git 리포지토리의 동일한 콘텐츠를 가리키지 않을 수 있으며 번들은 배포된 작업이 배포된 로컬 복사본과 동일한 콘텐츠를 포함할 것으로 예상하므로 번들에 대해 설정된 source 필드와 작업 GIT 필드는 권장되지 않습니다.
대신 리포지토리를 로컬로 복제하고 이 리포지토리 내에서 번들 프로젝트를 설정하여 작업의 원본이 작업 영역이 되도록 합니다.
health Map 이 작업에 대해 정의할 수 있는 선택적 건강 규칙 집합입니다. 건강을 참조하세요.
job_clusters Sequence 이 작업의 태스크에서 공유하고 다시 사용할 수 있는 작업 클러스터 사양 목록입니다. job_clusters 참조하세요.
max_concurrent_runs Integer 선택적으로 허용되는 작업의 최대 동시 실행 수입니다. 동일한 작업의 여러 실행을 동시에 실행할 수 있도록 하려면 이 값을 설정합니다.
name String 작업에 대한 선택적 이름입니다. 최대 길이는 UTF-8 인코딩에서 4096바이트입니다.
notification_settings Map 이 작업에 대해 각각 email_notificationswebhook_notifications 에 알림을 보낼 때 사용되는 선택적 알림 설정입니다. notification_settings 참조하세요.
parameters Sequence 작업 수준 매개 변수 정의입니다.
performance_target String 서버리스에서 실행의 성능 또는 비용 효율성을 정의합니다.
permissions Sequence 작업 권한 사용 권한을 참조 하세요.
queue Map 작업의 큐 설정입니다. 큐를 참조 하세요.
run_as Map 쓰기 전용 설정입니다. 작업이 실행되는 사용자 또는 서비스 주체를 지정합니다. 지정하지 않으면 작업이 작업을 만든 사용자로 실행됩니다. user_name 또는 service_principal_name 중 하나를 지정해야 합니다. 그렇지 않으면 오류가 throw됩니다. run_as 참조하세요.
schedule Map 이 작업에 대한 선택적 정기 일정입니다. 기본 동작은 작업 UI에서 "지금 실행"을 클릭하거나 API 요청을 전송하여 트리거될 때만 작업이 실행된다는 것입니다 runNow. 일정을 참조하세요.
tags Map 작업과 연결된 태그의 맵입니다. 이러한 태그는 작업 클러스터에 대한 클러스터 태그로 클러스터에 전달되며 클러스터 태그와 동일한 제한 사항이 적용됩니다. 최대 25개의 태그를 작업에 추가할 수 있습니다.
tasks Sequence 이 작업에서 실행할 작업 사양 목록입니다. Databricks 자산 번들에서 작업에 태스크 추가하기.
timeout_seconds Integer 이 작업의 각 실행에 적용되는 선택적 시간 제한입니다. 값은 0 시간 제한이 없음을 의미합니다.
trigger Map 특정 조건이 충족될 때 실행을 트리거하는 구성입니다. 트리거를 참조하십시오.
webhook_notifications Map 이 작업의 실행이 시작되거나 완료될 때 알릴 시스템 알림 ID의 컬렉션입니다. webhook_notifications 참조하세요.

작업.지속적인

Type: Map

연속 작업 실행을 위한 구성입니다.

Key Type Description
pause_status String 연속 작업이 일시 중지되었는지 여부입니다. 유효한 값: PAUSED, . UNPAUSED
task_retry_mode String 연속 작업이 작업 수준 재시도를 적용하는 방법을 나타냅니다. 유효한 값은 NEVERON_FAILURE입니다. 기본값은 NEVER입니다.

작업.배포

Type: Map

외부 원본에서 관리하는 작업에 대한 배포 정보입니다.

Key Type Description
kind String 배포의 종류 예: BUNDLE.
metadata_file_path String 배포에 대한 메타데이터 파일의 경로입니다.

job.email_notifications (작업 이메일 알림)

Type: Map

작업 실행에 대한 이메일 알림 설정입니다.

Key Type Description
on_start Sequence 실행이 시작될 때 알릴 전자 메일 주소 목록입니다.
on_success Sequence 실행이 성공하면 알릴 전자 메일 주소 목록입니다.
on_failure Sequence 실행이 실패할 때 알릴 전자 메일 주소 목록입니다.
on_duration_warning_threshold_exceeded Sequence 실행 기간이 경고 임계값을 초과할 때 알릴 전자 메일 주소 목록입니다.
no_alert_for_skipped_runs Boolean 건너뛴 실행에 대한 경고 전송을 건너뛸지 여부입니다.

job.environments (작업 환경)

Type: Sequence

작업의 서버리스 작업에서 참조할 수 있는 작업 실행 환경 사양 목록입니다.

목록의 각 항목은 다음과 같습니다.JobEnvironment

Key Type Description
environment_key String 환경의 키입니다. 작업 내에서 고유해야 합니다.
spec Map 서버리스 환경을 나타내는 엔터티입니다. job.environments.spec을 참조하세요.

job.environments.spec

Type: Map

서버리스 환경을 나타내는 엔터티입니다.

Key Type Description
client String Deprecated. 클라이언트 버전입니다.
dependencies Sequence 이 환경의 pip 버전에서 지원하는 pip 종속성 목록입니다.
environment_version String 필수 사항입니다. 환경에서 사용하는 환경 버전입니다. 각 버전에는 특정 Python 버전 및 Python 패키지 집합이 함께 제공됩니다. 버전은 정수로 구성된 문자열입니다.

job.git 원본

Type: Map

작업 소스 코드에 대한 Git 리포지토리 구성입니다.

Key Type Description
git_branch String 이 작업에서 체크아웃하여 사용할 브랜치 이름입니다. 이 필드는 git_tag 또는 git_commit와 함께 지정할 수 없습니다.
git_commit String 이 작업에서 체크 아웃하고 사용하도록 커밋합니다. 이 필드는 git_branch 또는 git_tag와 함께 지정할 수 없습니다.
git_provider String Git 리포지토리를 호스트하는 데 사용되는 서비스의 고유 식별자입니다. 값은 대/소문자를 구분하지 않습니다. 유효한 값은 gitHub,, bitbucketCloudgitLab, azureDevOpsServicesgitHubEnterprise, bitbucketServer. gitLabEnterpriseEdition
git_snapshot Map 작업이 실행되었을 때 원격 리포지토리의 읽기 전용 상태입니다. 이 필드는 작업 실행에만 포함됩니다. git_snapshot 참조하세요.
git_tag String 이 작업에서 체크 아웃하고 사용할 태그의 이름입니다. 이 필드는 git_branch 또는 git_commit와 함께 지정할 수 없습니다.
git_url String 이 작업에서 복제할 리포지토리의 URL입니다.

작업.깃_소스.깃_스냅샷

Type: Map

읽기 전용 커밋 정보 스냅샷입니다.

Key Type Description
used_commit String 실행을 실행하는 데 사용된 커밋입니다. git_branch가 지정된 경우, 이는 실행 시 분기의 HEAD를 가리킵니다. git_tag가 지정된 경우, 이는 태그가 가리키는 커밋을 가리킵니다.

작업.건강

Type: Map

작업에 대한 상태 감시 구성을 설정합니다.

Key Type Description
rules Sequence 작업 건강 규칙 목록입니다. 각 규칙에는 metricop (연산자) 및 value가 포함됩니다. job.health.rules를 참조하세요.

job.health.rules

Type: Sequence

작업 건강 규칙 목록입니다.

목록의 각 항목은 다음과 같습니다.JobHealthRule

Key Type Description
metric String 특정 상태 규칙에 대해 평가되는 상태 메트릭을 지정합니다.
  • RUN_DURATION_SECONDS: 실행 예상 총 시간(초).
  • STREAMING_BACKLOG_BYTES: 모든 스트림에서 사용되기를 기다리는 데이터의 최대 바이트 수입니다. 이 메트릭은 공개 미리 보기로 제공됩니다.
  • STREAMING_BACKLOG_RECORDS: 모든 스트림에서 최대 오프셋 지연 시간의 추정치입니다. 이 메트릭은 공개 미리 보기로 제공됩니다.
  • STREAMING_BACKLOG_SECONDS: 모든 스트림에 대한 최대 소비자 지연의 추정치입니다. 이 메트릭은 공개 미리 보기로 제공됩니다.
  • STREAMING_BACKLOG_FILES: 모든 스트림에서 처리 중인 파일의 최대 수에 대한 추정값입니다. 이 메트릭은 공개 미리 보기로 제공됩니다.
op String 상태 메트릭 값을 지정된 임계값과 비교하는 데 사용되는 연산자를 지정합니다.
value Integer 상태 규칙을 충족하기 위해 상태 메트릭이 준수해야 하는 임계값을 지정합니다.

작업.작업_클러스터

Type: Sequence

이 작업의 태스크에서 공유하고 다시 사용할 수 있는 작업 클러스터 사양 목록입니다. 라이브러리는 공유 작업 클러스터에서 선언할 수 없습니다. 작업 설정에서 종속 라이브러리를 선언해야 합니다.

목록의 각 항목은 다음과 같습니다.JobCluster

Key Type Description
job_cluster_key String 작업 클러스터의 고유한 이름입니다. 이 필드는 필수이며 작업 내에서 고유해야 합니다. JobTaskSettings 는 이 필드를 참조하여 작업 실행을 위해 시작할 클러스터를 결정할 수 있습니다.
new_cluster Map new_cluster 경우 각 작업에 대해 만들어진 클러스터에 대한 설명입니다. 클러스터를 참조하세요.

작업.알림_설정

Type: Map

작업에 대한 모든 알림에 적용되는 알림 설정입니다.

Key Type Description
no_alert_for_skipped_runs Boolean 건너뛴 실행에 대한 경고 전송을 건너뛸지 여부입니다.
no_alert_for_canceled_runs Boolean 취소된 실행에 대한 경고 전송을 건너뛸지 여부입니다.

job.queue

Type: Map

작업에 대한 큐 설정입니다.

Key Type Description
enabled Boolean 작업에 대한 큐를 사용하도록 설정할지 여부입니다.

작업.일정

Type: Map

주기적인 작업 실행에 대한 구성을 예약합니다.

Key Type Description
quartz_cron_expression String 작업이 실행되는 시기를 지정하는 Quartz 구문을 사용하는 Cron 식입니다. 예를 들어 0 0 9 * * ? 매일 오전 9:00 UTC에 작업을 실행합니다.
timezone_id String 일정의 표준 시간대입니다. 예를 들어 America/Los_Angeles 또는 UTC.
pause_status String 일정이 일시 중지되었는지 여부입니다. 유효한 값: PAUSED, . UNPAUSED

작업.트리거

Type: Map

이벤트 기반 작업 실행에 대한 구성을 트리거합니다.

Key Type Description
file_arrival Map 파일 도착에 따라 트리거합니다. file_arrival 참조하세요.
table Map 테이블을 기반으로 트리거합니다. 표를 참조하세요.
table_update Map 테이블 업데이트를 기반으로 트리거합니다. table_update 참조하세요.
periodic Map 주기적 트리거입니다. 주기적 참조

job.trigger.file_arrival

Type: Map

파일 도착에 따라 구성을 트리거합니다.

Key Type Description
url String 새 파일을 모니터링할 파일 경로입니다.
min_time_between_triggers_seconds Integer 트리거 이벤트 사이의 최소 시간(초)입니다.
wait_after_last_change_seconds Integer 트리거하기 전에 마지막 파일이 변경된 후 시간(초)을 기다립니다.

작업.트리거.테이블

Type: Map

테이블을 기반으로 구성을 트리거합니다.

Key Type Description
table_names Sequence 모니터링할 테이블 이름 목록입니다.
condition String 작업을 트리거하기 위해 충족해야 하는 SQL 조건입니다.

job.trigger.테이블_업데이트

Type: Map

테이블 업데이트를 기반으로 구성을 트리거합니다.

Key Type Description
table_names Sequence 업데이트를 모니터링할 테이블 이름 목록입니다.
condition String 작업을 트리거하기 위해 충족해야 하는 SQL 조건입니다.
wait_after_last_change_seconds Integer 트리거하기 전에 마지막 테이블 업데이트 후 시간(초)을 기다립니다.

작업.트리거.주기적

Type: Map

주기적 트리거 구성

Key Type Description
interval Integer 주기적 트리거의 간격 값입니다.
unit String 간격의 시간 단위입니다. 유효한 값: SECONDS, MINUTES, HOURSDAYS, WEEKS.

job.webhook_notifications (작업 웹훅 알림)

Type: Map

작업 실행에 대한 웹후크 알림 설정입니다.

Key Type Description
on_start Sequence 실행이 시작될 때 알릴 웹후크 알림 ID 목록입니다.
on_success Sequence 실행이 성공하면 알릴 웹후크 알림 ID 목록입니다.
on_failure Sequence 실행이 실패할 때 알릴 웹후크 알림 ID 목록입니다.
on_duration_warning_threshold_exceeded Sequence 실행 기간이 경고 임계값을 초과할 때 알릴 웹후크 알림 ID 목록입니다.

Examples

다음 예제에서는 리소스 키 hello-job을 사용하여 하나의 노트북 작업을 포함한 작업을 정의합니다.

resources:
  jobs:
    hello-job:
      name: hello-job
      tasks:
        - task_key: hello-task
          notebook_task:
            notebook_path: ./hello.py

다음 예제에서는 SQL Notebook을 사용하여 작업을 정의합니다.

resources:
  jobs:
    job_with_sql_notebook:
      name: 'Job to demonstrate using a SQL notebook with a SQL warehouse'
      tasks:
        - task_key: notebook
          notebook_task:
            notebook_path: ./select.sql
            warehouse_id: 799f096837fzzzz4

추가 작업 구성 예제는 작업 구성을 참조하세요.

작업 태스크 정의 및 작업 설정 재정의에 대한 자세한 내용은 다음을 참조하세요.

모델(레거시)

Type: Map

모델 리소스를 사용하면 번들에 레거시 모델을 정의할 수 있습니다. Databricks는 대신 Unity 카탈로그에 등록된 모델을 사용하는 것이 좋습니다.

모델_서빙_엔드포인트

Type: Map

model_serving_endpoint 리소스를 사용하면 엔드포인트제공하는 모델을 정의할 수 있습니다. 모델 서빙 엔드포인트 관리를 참조하세요.

model_serving_endpoints:
  <model_serving_endpoint-name>:
    <model_serving_endpoint-field-name>: <model_serving_endpoint-field-value>
Key Type Description
ai_gateway Map 서비스 엔드포인트에 대한 AI 게이트웨이 구성입니다. 참고: 외부 모델 및 프로비전된 처리량 엔드포인트만 현재 지원됩니다. ai_gateway 참조하세요.
config Map 서비스 엔드포인트의 핵심 구성입니다. 구성을 참조하세요.
name String 제공 엔드포인트의 이름입니다. 이 필드는 필수이며 Databricks 작업 영역에서 고유해야 합니다. 엔드포인트 이름은 영숫자 문자, 대시 및 밑줄로 구성됩니다.
permissions Sequence 엔드포인트의 권한을 제공하는 모델입니다. 사용 권한을 참조 하세요.
rate_limits Sequence Deprecated. 서비스 엔드포인트에 적용할 속도 제한입니다. AI 게이트웨이를 사용하여 속도 제한을 관리합니다.
route_optimized Boolean 서비스 엔드포인트에 대한 경로 최적화를 사용하도록 설정합니다.
tags Sequence 서비스 엔드포인트에 연결되고 청구 로그에 자동으로 전파될 태그입니다.

model_serving_endpoint.ai_gateway

Type: Map

서비스 엔드포인트에 대한 AI 게이트웨이 구성입니다.

Key Type Description
guardrails Map 가드레일 구성. 가드레일을 참조하세요.
inference_table_config Map Unity 카탈로그 테이블에 대한 유추 로깅을 위한 구성입니다. inference_table_config 참조하세요.
rate_limits Sequence 속도 제한 구성.
usage_tracking_config Map 사용량 추적을 위한 구성입니다. usage_tracking_config 참조하세요.

모델_서빙_엔드포인트.ai_게이트웨이.가드레일

Type: Map

AI 게이트웨이 가드레일 구성입니다.

Key Type Description
input Map 와 같은 safetypii필드가 있는 입력 가드레일 구성
output Map 와 같은 safetypii필드가 있는 출력 가드레일 구성
invalid_keywords Sequence 차단할 키워드 목록입니다.

모델_서비스_엔드포인트.ai_게이트웨이.추론_테이블_구성

Type: Map

Unity 카탈로그 테이블에 대한 유추 로깅을 위한 구성입니다.

Key Type Description
catalog_name String Unity 카탈로그의 카탈로그 이름입니다.
schema_name String Unity 카탈로그의 스키마 이름입니다.
table_name_prefix String 유추 테이블 이름의 접두사입니다.
enabled Boolean 유추 테이블 로깅을 사용할 수 있는지 여부입니다.

모델_서빙_엔드포인트.인공지능_게이트웨이.사용_추적_구성

Type: Map

사용을 추적하기 위한 AI 게이트웨이 구성입니다.

Key Type Description
enabled Boolean 사용량 추적을 사용할 수 있는지 여부입니다.

model_serving_endpoint.config

Type: Map

서비스 엔드포인트의 핵심 구성입니다.

Key Type Description
served_entities Sequence 서비스할 엔드포인트의 제공된 엔터티 목록입니다. 제공된 각 엔터티에는 entity_name, entity_version, workload_size, scale_to_zero_enabled, workload_type, environment_vars와 같은 필드가 포함됩니다.
served_models Sequence (사용되지 않음: 대신 사용 served_entities ) 서비스할 엔드포인트에 대해 제공된 모델 목록입니다.
traffic_config Map 서비스 엔드포인트에 대한 호출을 라우팅하는 방법을 정의하는 트래픽 구성입니다. traffic_config 참조하세요.
auto_capture_config Map Unity 카탈로그에 대한 요청 및 응답을 자동으로 기록하는 유추 테이블에 대한 구성입니다. auto_capture_config 참조하세요.

모델_서비스_엔드포인트.config.트래픽_구성

Type: Map

서비스 엔드포인트에 대한 호출을 라우팅하는 방법을 정의하는 트래픽 구성입니다.

Key Type Description
routes Sequence 트래픽 분포에 대한 경로 목록입니다. 각 경로에는 served_model_nametraffic_percentage가 포함되어 있습니다.

model_serving_endpoint.config.auto_capture_config

Type: Map

Unity 카탈로그에 대한 요청 및 응답을 자동으로 기록하는 유추 테이블에 대한 구성입니다.

Key Type Description
catalog_name String Unity 카탈로그의 카탈로그 이름입니다.
schema_name String Unity 카탈로그의 스키마 이름입니다.
table_name_prefix String 유추 테이블 이름의 접두사입니다.
enabled Boolean 유추 테이블 로깅을 사용할 수 있는지 여부입니다.

Example

다음 예제에서는 엔드포인트를 제공하는 Unity 카탈로그 모델을 정의합니다.

resources:
  model_serving_endpoints:
    uc_model_serving_endpoint:
      name: 'uc-model-endpoint'
      config:
        served_entities:
          - entity_name: 'myCatalog.mySchema.my-ads-model'
            entity_version: '10'
            workload_size: 'Small'
            scale_to_zero_enabled: 'true'
        traffic_config:
          routes:
            - served_model_name: 'my-ads-model-10'
              traffic_percentage: '100'
      tags:
        - key: 'team'
          value: 'data science'

파이프라인

Type: Map

파이프라인은 Databricks 자산 번들에 대한 Python에서 지원됩니다. databricks.bundles.pipelines를 참조하세요.

파이프라인 리소스를 사용하면 파이프라인을 만들 수 있습니다. 파이프라인에 대한 자세한 내용은 Lakeflow Spark 선언적 파이프라인을 참조하세요. Databricks 자산 번들 템플릿을 사용하여 파이프라인을 만드는 자습서는 Databricks 자산 번들을 사용하여 Lakeflow Spark 선언적 파이프라인 개발을 참조하세요.

pipelines:
  <pipeline-name>:
    <pipeline-field-name>: <pipeline-field-value>
Key Type Description
allow_duplicate_names Boolean false이면 이름이 다른 파이프라인의 이름과 충돌하는 경우 배포가 실패합니다.
budget_policy_id String 이 파이프라인의 예산 정책입니다.
catalog String 이 파이프라인에서 데이터를 게시하기 위한 Unity 카탈로그의 일환인 카탈로그입니다. 지정된 경우, 이 파이프라인의 테이블은 target 내부의 target 스키마에 게시됩니다(예를 들어, catalog.catalog.target). 지정하지 않으면 target Unity 카탈로그에 데이터가 게시되지 않습니다.
channel String 사용할 Lakeflow Spark 선언적 파이프라인 버전을 지정하는 Lakeflow Spark 선언적 파이프라인 릴리스 채널입니다.
clusters Sequence 이 파이프라인 배포에 대한 클러스터 설정입니다. 클러스터를 참조하세요.
configuration Map 이 파이프라인 실행에 대한 구성입니다.
continuous Boolean 파이프라인이 지속적인지 또는 트리거되는지 여부입니다. 이것은 trigger을 대체합니다.
deployment Map 이 파이프라인의 배포 유형입니다. 배포를 참조하세요.
development Boolean 파이프라인이 개발 모드에 있는지 확인하는 것입니다. 기본값은 false입니다.
dry_run Boolean 파이프라인이 건식 실행 파이프라인인지 여부입니다.
edition String 파이프라인 제품 버전입니다.
environment Map 서버리스 컴퓨팅에 종속성을 설치하는 데 사용되는 이 파이프라인의 환경 사양입니다. 환경을 참조하세요. 이 키는 Databricks CLI 버전 0.258 이상에서만 지원됩니다.
event_log Map 이 파이프라인에 대한 이벤트 로그 구성입니다. event_log 참조하세요.
filters Map 배포된 그래프에 포함할 파이프라인 패키지를 결정하는 필터입니다. 필터를 참조하세요.
id String 이 파이프라인의 고유 식별자입니다.
ingestion_definition Map 관리되는 수집 파이프라인에 대한 구성입니다. 이러한 설정은 libraries, schema, target 또는 catalog 설정과 함께 사용할 수 없습니다. ingestion_definition 참조하세요.
libraries Sequence 이 배포에 필요한 라이브러리 또는 코드 목록입니다. pipeline.libraries를 참조하세요.
lifecycle Map 리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다. 수명 주기를 참조하세요.
name String 이 파이프라인의 친숙한 이름입니다.
notifications Sequence 이 파이프라인에 대한 알림 설정입니다.
permissions Sequence 파이프라인의 권한 사용 권한을 참조 하세요.
photon Boolean 이 파이프라인에 Photon을 사용할 수 있는지 여부입니다.
root_path String 이 파이프라인의 루트 경로입니다. Databricks 사용자 인터페이스에서 파이프라인을 편집할 때 루트 디렉터리로 사용되며 파이프라인 실행 중에 Python 원본을 실행할 때 sys.path에 추가됩니다.
run_as Map 파이프라인이 실행되는 ID입니다. 지정하지 않으면 파이프라인이 파이프라인을 만든 사용자로 실행됩니다. 만 user_name 또는 service_principal_name 지정할 수 있습니다. 둘 다 지정하면 오류가 발생됩니다. run_as 참조하세요.
schema String 테이블을 읽거나 게시하는 기본 스키마(데이터베이스)입니다.
serverless Boolean 이 파이프라인에 대해 서버리스 컴퓨팅을 사용할 수 있는지 여부입니다.
storage String 검사점 및 테이블을 저장하기 위한 DBFS 루트 디렉터리입니다.
tags Map 파이프라인과 연결된 태그의 맵입니다. 클러스터에 클러스터 태그로 전달되므로 동일한 제한 사항이 적용됩니다. 파이프라인에 최대 25개의 태그를 추가할 수 있습니다.
target String 이 파이프라인의 테이블을 추가할 대상 스키마(데이터베이스)입니다. 정확히 하나 schema 또는 target 지정해야 합니다. Unity 카탈로그 catalog에 게시하려면, catalog도 지정하십시오. 이 레거시 필드는 schema 필드가 파이프라인 생성에 더 적합하여 사용이 중지되었습니다.

파이프라인.배포

Type: Map

파이프라인에 대한 배포 유형 구성입니다.

Key Type Description
kind String 배포의 종류 예: BUNDLE.
metadata_file_path String 배포에 대한 메타데이터 파일의 경로입니다.

파이프라인 환경

Type: Map

서버리스 컴퓨팅에 종속성을 설치하기 위한 환경 사양입니다.

Key Type Description
dependencies Sequence 이 환경의 pip 버전에서 지원하는 pip 종속성 목록입니다. 각 종속성은 pip 요구 사항 파일 줄입니다.

파이프라인.이벤트_로그

Type: Map

파이프라인에 대한 이벤트 로그 구성입니다.

Key Type Description
catalog String 이벤트 로그가 게시되는 Unity 카탈로그입니다.
name String 이벤트 로그가 Unity 카탈로그에 게시되는 이름입니다.
schema String 이벤트 로그가 게시되는 Unity 카탈로그 스키마입니다.

파이프라인.필터들

Type: Map

배포된 그래프에 포함할 파이프라인 패키지를 결정하는 필터입니다.

Key Type Description
include Sequence 포함할 패키지 이름 목록입니다.
exclude Sequence 제외할 패키지 이름 목록입니다.

pipeline.ingestion_definition

Type: Map

관리되는 수집 파이프라인에 대한 구성입니다. 이러한 설정은 libraries, schema, target 또는 catalog 설정과 함께 사용할 수 없습니다.

Key Type Description
connection_name String 데이터 수집에 사용할 연결의 이름입니다.
ingestion_gateway_id String 수집 게이트웨이의 ID입니다.
objects Sequence 필수 사항입니다. 복제할 테이블과 복제된 테이블의 대상을 지정하는 설정입니다. 각 개체는 SchemaSpec, TableSpec 또는 ReportSpec일 수 있습니다.
source_configuration Map 카탈로그 수준 원본 구성 매개 변수입니다. source_configuration 참조하세요.
table_configuration Map 수집 테이블의 설정입니다. table_configuration 참조하세요.

SchemaSpec

Type: Map

스키마에서 모든 테이블을 수집하기 위한 스키마 개체 사양입니다.

Key Type Description
source_schema String 데이터를 수집할 원본 스키마의 이름입니다.
destination_catalog String Unity 카탈로그의 대상 카탈로그 이름입니다.
destination_schema String Unity 카탈로그의 대상 스키마 이름입니다.
table_configuration Map 이 스키마의 모든 테이블에 적용할 구성입니다. pipeline.ingestion_definition.table_configuration을 참조하세요.

TableSpec

Type: Map

특정 테이블을 가져오기 위한 테이블 오브젝트 사양입니다.

Key Type Description
source_schema String 테이블을 포함하는 원본 스키마의 이름입니다.
source_table String 수집할 원본 테이블의 이름입니다.
destination_catalog String Unity 카탈로그의 대상 카탈로그 이름입니다.
destination_schema String Unity 카탈로그의 대상 스키마 이름입니다.
destination_table String Unity 카탈로그의 대상 테이블 이름입니다.
table_configuration Map 이 특정 테이블에 대한 구성입니다. pipeline.ingestion_definition.table_configuration을 참조하세요.

보고서 사양

Type: Map

분석 보고서를 수집하여 처리하기 위한 보고서 객체 사양입니다.

Key Type Description
source_url String 원본 보고서의 URL입니다.
source_report String 원본 보고서의 이름 또는 식별자입니다.
destination_catalog String Unity 카탈로그의 대상 카탈로그 이름입니다.
destination_schema String Unity 카탈로그의 대상 스키마 이름입니다.
destination_table String 보고서 데이터의 대상 테이블 이름입니다.
table_configuration Map 보고서 테이블에 대한 구성입니다. pipeline.ingestion_definition.table_configuration을 참조하세요.

파이프라인.ingestion_definition.source_configuration

Type: Map

원본에 대한 구성입니다.

Key Type Description
catalog Map 카탈로그 수준 원본 구성 매개 변수입니다. 카탈로그를 참조 하세요.
pipeline.ingestion_definition.source_configuration.catalog

Type: Map

카탈로그 수준 원본 구성 매개 변수

Key Type Description
postgres Map Postgres 관련 카탈로그 수준 구성 매개 변수입니다. 논리적 복제에 사용할 Postgres 슬롯 구성을 나타내는 slot_configMap과 연결된 하나의 키를 포함합니다.
source_catalog String 원본 카탈로그 이름입니다.

파이프라인.수집_정의.테이블_구성

Type: Map

수집 테이블에 대한 구성 옵션입니다.

Key Type Description
exclude_columns Sequence 수집 시 제외할 열 이름의 목록입니다. 명시하지 않으면 include_columns가 수집할 열을 완전히 제어합니다. 지정하면 이후 열을 포함한 다른 모든 열이 수집을 위해 자동으로 포함됩니다. 이 필드는 include_columns와 상호 배타적입니다.
include_columns Sequence 포함할 열 이름의 목록입니다. 명시하지 않으면 exclude_columns에 있는 열을 제외한 모든 열이 포함됩니다. 이후 열은 자동으로 포함됩니다. 지정하면 향후 다른 모든 열은 데이터 처리에서 자동으로 제외됩니다. 이 필드는 exclude_columns와 상호 배타적입니다.
primary_keys Sequence 테이블의 기본 키로 사용할 열 이름 목록입니다.
sequence_by Sequence 원본 데이터에서 이벤트의 논리적 순서를 지정하는 열 이름입니다. Spark 선언적 파이프라인은 이 시퀀스를 사용하여 순서가 잘못 도착하는 변경 이벤트를 처리합니다.

파이프라인.라이브러리

Type: Sequence

이 파이프라인에 필요한 라이브러리 또는 코드 목록을 정의합니다.

목록의 각 항목은 정의입니다.

Key Type Description
file Map 파이프라인을 정의하고 Databricks Repos에 저장되는 파일의 경로입니다. pipeline.libraries.file을 참조하세요.
glob Map 소스 코드를 포함할 통합 필드입니다. 각 항목은 전자 필기장 경로, 파일 경로 또는 끝나는 폴더 경로일 수 있습니다 /**. 이 필드는 notebook 또는 file와 함께 사용할 수 없습니다. pipeline.libraries.glob을 참조하세요.
notebook Map 파이프라인을 정의하고 Databricks 작업 영역에 저장되는 Notebook의 경로입니다. pipeline.libraries.notebook을 참조하세요.
whl String 이 필드는 더 이상 사용되지 않습니다.

pipeline.libraries.file

Type: Map

파이프라인을 정의하고 Databricks Repos에 저장되는 파일의 경로입니다.

Key Type Description
path String 소스 코드의 절대 경로입니다.

파이프라인.라이브러리.글로브

Type: Map

소스 코드를 포함할 통합 필드입니다. 각 항목은 전자 필기장 경로, 파일 경로 또는 끝나는 폴더 경로일 수 있습니다 /**. 이 필드는 notebook 또는 file와 함께 사용할 수 없습니다.

Key Type Description
include String 파이프라인에 포함할 소스 코드

파이프라인.라이브러리.노트북

Type: Map

파이프라인을 정의하고 Databricks 작업 영역에 저장되는 Notebook의 경로입니다.

Key Type Description
path String 소스 코드의 절대 경로입니다.

Example

다음 예제에서는 리소스 키 hello-pipeline사용하여 파이프라인을 정의합니다.

resources:
  pipelines:
    hello-pipeline:
      name: hello-pipeline
      clusters:
        - label: default
          num_workers: 1
      development: true
      continuous: false
      channel: CURRENT
      edition: CORE
      photon: false
      libraries:
        - notebook:
            path: ./pipeline.py

추가 파이프라인 구성 예제는 파이프라인 구성을 참조하세요.

품질_모니터(Unity 카탈로그)

Type: Map

quality_monitor 리소스를 사용하면 Unity 카탈로그 테이블 모니터를 정의할 수 있습니다. 모니터에 대한 자세한 내용은 데이터 프로파일링을 참조하세요.

quality_monitors:
  <quality_monitor-name>:
    <quality_monitor-field-name>: <quality_monitor-field-value>
Key Type Description
assets_dir String 모니터링 자산(예: 대시보드, 메트릭 테이블)을 저장할 디렉터리입니다.
baseline_table_name String 드리프트 메트릭이 계산되는 기준 테이블의 이름입니다. 모니터링되는 테이블의 열은 반드시 기준 테이블에 모두 존재해야 합니다.
custom_metrics Sequence 모니터링되는 테이블에서 계산할 사용자 지정 메트릭입니다. 이러한 메트릭은 집계 메트릭, 파생 메트릭(이미 계산된 집계 메트릭에서) 또는 드리프트 메트릭(시간 기간 간 메트릭 비교)일 수 있습니다. custom_metrics 참조하세요.
inference_log Map 유추 로그를 모니터링하기 위한 구성입니다. inference_log 참조하세요.
lifecycle Map 리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다. 수명 주기를 참조하세요.
notifications Map 모니터에 대한 알림 설정입니다. 알림을 참조하세요.
output_schema_name String 출력 메트릭 테이블이 만들어지는 스키마입니다.
schedule Map 메트릭 테이블을 자동으로 업데이트하고 새로 고치는 일정입니다. 일정을 참조하세요.
skip_builtin_dashboard Boolean 데이터 품질 메트릭을 요약하는 기본 대시보드 만들기를 건너뛸지 여부입니다.
slicing_exprs Sequence 대상 분석을 위해 데이터를 조각화할 열 식 목록입니다. 데이터는 각 표현별로 독립적으로 그룹화되므로, 각 술어와 그 보충에 대해 별도의 조각이 생성됩니다. 높은 카디널리티 열의 경우 상위 100개 고유 값만 빈도별로 조각이 생성됩니다.
snapshot Map 스냅샷 테이블 모니터링을 위한 구성입니다. 스냅샷을 참조하세요.
table_name String 테이블의 전체 이름입니다.
time_series Map 시계열 테이블을 모니터링하기 위한 구성입니다. time_series 참조하세요.
warehouse_id String 대시보드 만들기를 위해 웨어하우스를 지정하는 선택적 인수입니다. 지정하지 않으면 첫 번째 실행 웨어하우스가 사용됩니다.

품질_모니터.사용자_지정_메트릭

Type: Sequence

사용자 지정 메트릭 정의 목록입니다.

목록의 각 항목은 다음과 같습니다.CustomMetric

Key Type Description
definition String 메트릭을 계산하는 방법을 지정하는 SQL 식의 Jinja 템플릿입니다. 메트릭 정의 만들기를 참조하세요.
input_columns Sequence 메트릭을 계산해야 하는 입력 테이블의 열 이름 목록입니다. 메트릭에 여러 열의 정보가 필요함을 나타내는 데 사용할 :table 수 있습니다.
name String 출력 테이블의 메트릭 이름입니다.
output_data_type String 사용자 지정 메트릭의 출력 형식입니다.
type String , CUSTOM_METRIC_TYPE_AGGREGATE또는 CUSTOM_METRIC_TYPE_DERIVED. 중 CUSTOM_METRIC_TYPE_DRIFT하나만 사용할 수 있습니다. CUSTOM_METRIC_TYPE_AGGREGATECUSTOM_METRIC_TYPE_DERIVED 메트릭은 단일 테이블에서 계산되는 반면, CUSTOM_METRIC_TYPE_DRIFT는 기준 및 입력 테이블 간 또는 두 개의 연속된 시간 창 간의 메트릭을 비교합니다.
  • CUSTOM_METRIC_TYPE_AGGREGATE: 테이블의 기존 열에만 의존해야 합니다.
  • CUSTOM_METRIC_TYPE_DERIVED: 이전에 계산된 집계 메트릭에 따라 다름
  • CUSTOM_METRIC_TYPE_DRIFT: 이전에 계산된 집계 또는 파생 메트릭에 따라 다름

품질_모니터.데이터_분류_구성

Type: Map

데이터 분류를 위한 구성입니다.

Key Type Description
enabled Boolean 데이터 분류를 사용할 수 있는지 여부입니다.

품질_모니터.추론_로그

Type: Map

유추 로그를 모니터링하기 위한 구성입니다.

Key Type Description
granularities Sequence 유추 로그를 집계하기 위한 시간 세분성(예: ["1 day"])입니다.
model_id_col String 모델 ID를 포함하는 열의 이름입니다.
prediction_col String 예측 데이터를 포함하는 열의 이름입니다.
timestamp_col String 타임스탬프를 포함하는 열의 이름입니다.
problem_type String ML 문제의 유형입니다. 유효한 값에는 PROBLEM_TYPE_CLASSIFICATION, PROBLEM_TYPE_REGRESSION이(가) 포함됩니다.
label_col String 레이블(실제값)이 포함된 열의 이름입니다.

품질_모니터.알림

Type: Map

모니터에 대한 알림 설정입니다.

Key Type Description
on_failure Map 모니터가 실패할 때 알림 설정입니다. on_failure 참조하십시오.
on_new_classification_tag_detected Map 새 분류 태그가 검색될 때 알림 설정입니다. on_new_classification_tag_detected을 참조하세요.

quality_monitor.notifications.on_failure (품질 모니터 알림 실패 시)

Type: Map

모니터가 실패할 때 알림 설정입니다.

Key Type Description
email_addresses Sequence 모니터 실패 시 알릴 전자 메일 주소 목록입니다.

quality_monitor.notifications.새로운 분류 태그가 감지되었습니다.

Type: Map

새 분류 태그가 검색될 때 알림 설정입니다.

Key Type Description
email_addresses Sequence 새 분류 태그가 검색될 때 알릴 전자 메일 주소 목록입니다.

품질_모니터.일정

Type: Map

메트릭 테이블을 자동으로 업데이트하고 새로 고치는 일정을 예약합니다.

Key Type Description
quartz_cron_expression String Quartz 구문을 사용하는 Cron 식입니다. 예를 들어 0 0 8 * * ? 매일 오전 8:00에 실행됩니다.
timezone_id String 일정의 표준 시간대입니다(예: UTC, America/Los_Angeles).
pause_status String 일정이 일시 중지되었는지 여부입니다. 유효한 값: PAUSED, . UNPAUSED

품질_모니터.스냅샷

Type: Map

스냅샷 테이블 모니터링을 위한 구성입니다.

품질_모니터.시계열

시계열 테이블을 모니터링하기 위한 구성입니다.

Key Type Description
granularities Sequence 시계열 데이터를 집계하기 위한 시간 세분성입니다(예: ["30 minutes"]).
timestamp_col String 타임스탬프를 포함하는 열의 이름입니다.

Examples

을 정의하는 전체 예제 번들은 quality_monitormlops_demo 번들을 참조하세요.

다음 예제에서는 InferenceLog, TimeSeries스냅샷 프로필 형식에 대한 품질 모니터를 정의합니다.

# InferenceLog profile type
resources:
  quality_monitors:
    my_quality_monitor:
      table_name: dev.mlops_schema.predictions
      output_schema_name: ${bundle.target}.mlops_schema
      assets_dir: /Workspace/Users/${workspace.current_user.userName}/databricks_lakehouse_monitoring
      inference_log:
        granularities: [1 day]
        model_id_col: model_id
        prediction_col: prediction
        label_col: price
        problem_type: PROBLEM_TYPE_REGRESSION
        timestamp_col: timestamp
      schedule:
        quartz_cron_expression: 0 0 8 * * ? # Run Every day at 8am
        timezone_id: UTC
# TimeSeries profile type
resources:
  quality_monitors:
    my_quality_monitor:
      table_name: dev.mlops_schema.predictions
      output_schema_name: ${bundle.target}.mlops_schema
      assets_dir: /Workspace/Users/${workspace.current_user.userName}/databricks_lakehouse_monitoring
      time_series:
        granularities: [30 minutes]
        timestamp_col: timestamp
      schedule:
        quartz_cron_expression: 0 0 8 * * ? # Run Every day at 8am
        timezone_id: UTC
# Snapshot profile type
resources:
  quality_monitors:
    my_quality_monitor:
      table_name: dev.mlops_schema.predictions
      output_schema_name: ${bundle.target}.mlops_schema
      assets_dir: /Workspace/Users/${workspace.current_user.userName}/databricks_lakehouse_monitoring
      snapshot: {}
      schedule:
        quartz_cron_expression: 0 0 8 * * ? # Run Every day at 8am
        timezone_id: UTC

등록된_모델(Unity 카탈로그)

Type: Map

등록된 모델 리소스를 사용하면 Unity 카탈로그에서 모델을 정의할 수 있습니다. Unity 카탈로그에서 등록된 모델에 대한 자세한 내용은 모델 수명 주기 관리를 참조하세요.

registered_models:
  <registered_model-name>:
    <registered_model-field-name>: <registered_model-field-value>
Key Type Description
aliases Sequence 등록된 모델과 연결된 별칭 목록입니다. registered_model.aliases를 참조하세요.
browse_only Boolean 요청에서 include_browse 사용하도록 설정된 경우 보안 주체가 BROWSE 권한을 통해 연결된 개체에 대한 메타데이터 검색으로 제한되는지 여부를 나타냅니다.
catalog_name String 스키마와 등록된 모델이 있는 카탈로그의 이름입니다.
comment String 등록된 모델에 첨부된 주석입니다.
full_name String 등록된 모델의 세 수준(정규화된) 이름
grants Sequence 등록된 모델과 연관된 보조금입니다. 부여를 참조 하세요.
lifecycle Map 리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다. 수명 주기를 참조하세요.
name String 등록된 모델의 이름입니다.
schema_name String 등록된 모델이 있는 스키마의 이름입니다.
storage_location String 모델 버전 데이터 파일이 저장되는 클라우드의 스토리지 위치입니다.

등록된_모델.별칭

Type: Sequence

등록된 모델과 연결된 별칭 목록입니다.

목록의 각 항목은 Alias입니다.

Key Type Description
alias_name String 별칭의 이름(예: 'champion' 또는 'latest_stable')
catalog_name String 모델 버전이 포함된 카탈로그의 이름입니다.
id String 별칭의 고유 식별자입니다.
model_name String 부모 스키마를 기준으로 한 모델 버전의 상위 등록 모델 이름입니다.
schema_name String 부모 카탈로그를 기준으로 모델 버전을 포함하는 스키마의 이름입니다.
version_num Integer 이 별칭이 가리키는 모델 버전의 정수 버전 번호입니다.

Example

다음 예제에서는 Unity 카탈로그에 등록된 모델을 정의합니다.

resources:
  registered_models:
    model:
      name: my_model
      catalog_name: ${bundle.target}
      schema_name: mlops_schema
      comment: Registered model in Unity Catalog for ${bundle.target} deployment target
      grants:
        - privileges:
            - EXECUTE
          principal: account users

스키마(Unity Catalog)

Type: Map

스키마는 Databricks 자산 번들에 대한 Python에서 지원됩니다. databricks.bundles.schemas를 참조하세요.

스키마 리소스 유형을 사용하면 번들의 일부로 생성된 워크플로 및 파이프라인의 테이블 및 기타 자산에 대한 Unity 카탈로그 스키마을 정의할 수 있습니다. 다른 리소스 종류와 다른 스키마에는 다음과 같은 제한 사항이 있습니다.

schemas:
  <schema-name>:
    <schema-field-name>: <schema-field-value>
Key Type Description
catalog_name String 부모 카탈로그의 이름입니다.
comment String 사용자가 제공한 자유 형식 텍스트 설명입니다.
grants Sequence 스키마와 연결된 권한 부여입니다. 부여를 참조 하세요.
lifecycle Map 리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다. 수명 주기를 참조하세요.
name String 부모 카탈로그를 기준으로 하는 스키마의 이름입니다.
properties Map 스키마에 연결된 키-값 속성의 맵입니다.
storage_root String 스키마 내의 관리 테이블에 대한 스토리지 루트 URL입니다.

Examples

다음 예제에서는 리소스 키 my_pipeline을(를) 사용하여 파이프라인을 정의하고, 키 my_schema을(를) 대상으로 하여 Unity 카탈로그 스키마를 만듭니다.

resources:
  pipelines:
    my_pipeline:
      name: test-pipeline-{{.unique_id}}
      libraries:
        - notebook:
            path: ../src/nb.ipynb
        - file:
            path: ../src/range.sql
      development: true
      catalog: ${resources.schemas.my_schema.catalog_name}
      target: ${resources.schemas.my_schema.id}

  schemas:
    my_schema:
      name: test-schema-{{.unique_id}}
      catalog_name: main
      comment: This schema was created by Databricks Asset Bundles.

최상위 권한 부여 매핑은 Databricks 자산 번들에서 지원되지 않으므로 스키마에 대한 권한을 설정하려면 schemas 매핑 내에서 스키마에 대한 권한을 정의합니다. 권한 부여에 대한 자세한 내용은 권한 표시, 부여 및 해지참조하세요.

다음 예제에서는 권한 부여를 사용하여 Unity 카탈로그 스키마를 정의합니다.

resources:
  schemas:
    my_schema:
      name: test-schema
      grants:
        - principal: users
          privileges:
            - SELECT
        - principal: my_team
          privileges:
            - CAN_MANAGE
      catalog_name: main

시크릿_스코프

Type: Map

secret_scope 리소스를 사용하면 번들에서 비밀 범위를 정의할 수 있습니다. 비밀 범위에 대한 자세한 내용은 비밀 관리를 참조하세요.

secret_scopes:
  <secret_scope-name>:
    <secret_scope-field-name>: <secret_scope-field-value>
Key Type Description
backend_type String 범위가 생성될 때 사용할 백엔드 유형. 지정하지 않으면 기본값은 .입니다 DATABRICKS.
keyvault_metadata Map 비밀 범위의 메타데이터는 backend_typeAZURE_KEYVAULT인 경우입니다. keyvault_metadata 참조하세요.
lifecycle Map 리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다. 수명 주기를 참조하세요.
name String 사용자가 요청한 범위 이름입니다. 범위 이름은 고유합니다.
permissions Sequence 비밀 범위에 적용할 권한 설정입니다. 권한은 비밀 범위 ACL을 통해 관리됩니다. 사용 권한을 참조 하세요.

비밀_범위.키보관함_메타데이터

Type: Map

Azure Key Vault 지원 비밀 범위에 대한 메타데이터입니다.

Key Type Description
resource_id String Key Vault의 Azure 리소스 ID입니다.
dns_name String Azure Key Vault의 DNS 이름입니다.

Examples

다음 예제에서는 키 보관소 백엔드를 사용하는 비밀 범위를 정의합니다.

resources:
  secret_scopes:
    secret_scope_azure:
      name: test-secrets-azure-backend
      backend_type: 'AZURE_KEYVAULT'
      keyvault_metadata:
        resource_id: my_azure_keyvault_id
        dns_name: my_azure_keyvault_dns_name

다음 예제에서는 비밀 범위 및 권한을 사용하여 사용자 지정 ACL을 설정합니다.

resources:
  secret_scopes:
    my_secret_scope:
      name: my_secret_scope
      permissions:
        - user_name: admins
          level: WRITE
        - user_name: users
          level: READ

번들 내에서 비밀 범위를 정의하고 이 범위에서 읽는 작업을 포함하는 작업을 설정하는 방법을 보여주는 예제 번들은 bundle-examples GitHub 리포지토리를 참조하세요.

SQL 창고

Type: Map

SQL 웨어하우스 리소스를 사용하면 번들에 SQL 웨어하우스 를 정의할 수 있습니다. SQL 웨어하우스에 대한 자세한 내용은 Azure Databricks의 데이터 웨어하우징을 참조하세요.

sql_warehouses:
  <sql-warehouse-name>:
    <sql-warehouse-field-name>: <sql-warehouse-field-value>
Key Type Description
auto_stop_mins Integer SQL 웨어하우스가 자동으로 중지되기 전에 유휴 상태여야 하는 시간(예: 실행 중인 쿼리 없음)의 시간(분)입니다. 유효한 값은 0으로, 자동 스탑이 없거나 10보다 크거나 같음입니다. 기본값은 120입니다.
channel Map 채널 세부 정보입니다. 채널 보기
cluster_size String 이 웨어하우스에 할당된 클러스터의 크기입니다. Spark 클러스터의 크기를 늘리면 더 큰 쿼리를 실행할 수 있습니다. 동시 쿼리 수를 늘리려면 max_num_clusters 조정합니다. 지원되는 값은 cluster_size 참조하세요.
creator_name String 웨어하우스를 만든 사용자의 이름입니다.
enable_photon Boolean 웨어하우스에서 Photon 최적화 클러스터를 사용해야 하는지 여부입니다. 기본값은 false입니다.
enable_serverless_compute Boolean 웨어하우스에서 서버리스 컴퓨팅을 사용해야 하는지 여부입니다.
instance_profile_arn String Deprecated. 클러스터에 IAM 역할을 전달하는 데 사용되는 인스턴스 프로필
lifecycle Map 리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다. 수명 주기를 참조하세요.
max_num_clusters Integer 자동 크기 조정기가 동시 쿼리를 처리하기 위해 만들 클러스터의 최대 수입니다. 값은 30보다 작거나 같아야 하며 30보다 크거나 같아야 합니다 min_num_clusters. 설정되지 않은 경우 자동으로 min_clusters를 기본값으로 설정합니다.
min_num_clusters Integer 이 SQL 웨어하우스에 대해 유지 관리될 사용 가능한 최소 클러스터 수입니다. 이렇게 하면 더 많은 수의 클러스터가 항상 실행되므로 새 쿼리의 콜드 시작 시간이 줄어들 수 있습니다. 이는 리소스 관리자에서 예약된 코어와 취소 가능한 코어와 비슷합니다. 값은 0보다 크고 min(max_num_clusters, 30)보다 작거나 같아야 합니다. 기본값은 1입니다.
name String 클러스터의 논리적 이름입니다. 이름은 조직 내에서 고유해야 하며 100자 미만이어야 합니다.
permissions Sequence 창고에 적용할 권한 설정입니다. 사용 권한을 참조 하세요.
spot_instance_policy String 스폿 인스턴스를 사용할지 여부입니다. 유효한 값은 POLICY_UNSPECIFIED, COST_OPTIMIZED. RELIABILITY_OPTIMIZED 기본값은 COST_OPTIMIZED입니다.
tags Map 이 SQL 웨어하우스와 연결된 모든 리소스(예: AWS 인스턴스 및 EBS 볼륨)에 태그가 지정되는 키-값 쌍 집합입니다. 태그 수는 45개 미만이어야 합니다.
warehouse_type String 웨어하우스 유형 PRO 또는 CLASSIC. 서버리스 컴퓨팅을 사용하려면 이 필드를 설정하여 PRO 필드를 enable_serverless_computetrue.로 설정합니다.

sql_웨어하우스.채널

Type: Map

SQL 웨어하우스의 채널 구성입니다.

Key Type Description
name String 채널의 이름입니다. 유효한 값에는 CHANNEL_NAME_CURRENT, . CHANNEL_NAME_PREVIEWCHANNEL_NAME_CUSTOM
dbsql_version String 사용자 지정 채널에 대한 DBSQL 버전입니다.

Example

다음 예제에서는 SQL 웨어하우스를 정의합니다.

resources:
  sql_warehouses:
    my_sql_warehouse:
      name: my_sql_warehouse
      cluster_size: X-Large
      enable_serverless_compute: true
      max_num_clusters: 3
      min_num_clusters: 1
      auto_stop_mins: 60
      warehouse_type: PRO

동기화된_데이터베이스_테이블

Type: Map

동기화된 데이터베이스 테이블 리소스를 사용하면 번들에서 Lakebase 데이터베이스 테이블을 정의할 수 있습니다.

동기화된 데이터베이스 테이블에 대한 자세한 내용은 데이터베이스 인스턴스란?을 참조하세요.

synced_database_tables:
  <synced_database_table-name>:
    <synced_database_table-field-name>: <synced_database_table-field-value>
Key Type Description
database_instance_name String 대상 데이터베이스 인스턴스의 이름입니다. 표준 카탈로그에서 동기화된 데이터베이스 테이블을 만들 때 필요합니다. 등록된 카탈로그에서 동기화된 데이터베이스 테이블을 만들 때 선택 사항입니다.
lifecycle Map 리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다. 수명 주기를 참조하세요.
logical_database_name String 이 테이블의 대상 Postgres 데이터베이스 개체(논리 데이터베이스)의 이름입니다.
name String 테이블의 전체 이름입니다.catalog.schema.table
spec Map 데이터베이스 테이블 사양입니다. 동기화된 데이터베이스 테이블 사양을 참조하세요.

데이터베이스 동기화 테이블 파일(synced_database_table.spec)

Type: Map

데이터베이스 테이블 사양입니다.

Key Type Description
create_database_objects_if_missing Boolean 동기화된 테이블의 논리 데이터베이스 및 스키마 리소스가 아직 없는 경우 만들 것인지 여부입니다.
existing_pipeline_id String 기존 파이프라인의 ID입니다. 이 설정이 설정되면 동기화된 테이블은 참조되는 기존 파이프라인으로 압축됩니다. 이렇게 하면 새 파이프라인을 만들지 않고 기존 컴퓨팅을 공유할 수 있습니다. 이 경우 scheduling_policy 이 동기화된 테이블은 기존 파이프라인의 예약 정책과 일치해야 합니다. existing_pipeline_idnew_pipeline_spec 중 최대 하나만 정의해야 합니다.
new_pipeline_spec Map 새 파이프라인에 대한 사양입니다. new_pipeline_spec 참조하세요. existing_pipeline_idnew_pipeline_spec 중 최대 하나만 정의해야 합니다.
primary_key_columns Sequence 기본 키를 형성하는 열 이름 목록입니다.
scheduling_policy String 동기화를 위한 예약 정책입니다. 유효한 값에는 SNAPSHOT, CONTINUOUS이(가) 포함됩니다.
source_table_full_name String 원본 테이블의 전체 이름입니다 catalog.schema.table.
timeseries_key String 동일한 기본 키를 사용하여 행을 중복 해제하는 시계열 키입니다.

synced_database_table.spec.new_pipeline_spec

Type: Map

동기화된 데이터베이스 테이블에서 사용하는 새 파이프라인에 대한 사양입니다.

Key Type Description
budget_policy_id String 새로 만든 파이프라인에 설정할 예산 정책의 ID입니다.
storage_catalog String 검사점 및 이벤트 로그와 같은 중간 파일을 저장할 파이프라인의 카탈로그입니다. 사용자가 델타 테이블을 만들 수 있는 권한이 있는 표준 카탈로그여야 합니다.
storage_schema String 검사점 및 이벤트 로그와 같은 중간 파일을 저장할 파이프라인의 스키마입니다. 사용자가 델타 테이블을 만들 수 있는 권한이 있는 표준 카탈로그에 있어야 합니다.

Examples

다음 예제에서는 해당 데이터베이스 카탈로그 내에서 동기화된 데이터베이스 테이블을 정의합니다.

resources:
  database_instances:
    my_instance:
      name: my-instance
      capacity: CU_1
  database_catalogs:
    my_catalog:
      database_instance_name: my-instance
      database_name: 'my_database'
      name: my_catalog
      create_database_if_not_exists: true
  synced_database_tables:
    my_synced_table:
      name: ${resources.database_catalogs.my_catalog.name}.${resources.database_catalogs.my_catalog.database_name}.my_destination_table
      database_instance_name: ${resources.database_catalogs.my_catalog.database_instance_name}
      logical_database_name: ${resources.database_catalogs.my_catalog.database_name}
      spec:
        source_table_full_name: 'my_source_table'
        scheduling_policy: SNAPSHOT
        primary_key_columns:
          - my_pk_column
        new_pipeline_spec:
          storage_catalog: 'my_delta_catalog'
          storage_schema: 'my_delta_schema'

다음 예제에서는 표준 카탈로그 내에 동기화된 데이터베이스 테이블을 정의합니다.

resources:
  synced_database_tables:
    my_synced_table:
      name: 'my_standard_catalog.public.synced_table'
      # database_instance_name is required for synced tables created in standard catalogs.
      database_instance_name: 'my-database-instance'
      # logical_database_name is required for synced tables created in standard catalogs:
      logical_database_name: ${resources.database_catalogs.my_catalog.database_name}
      spec:
        source_table_full_name: 'source_catalog.schema.table'
        scheduling_policy: SNAPSHOT
        primary_key_columns:
          - my_pk_column
        create_database_objects_if_missing: true
        new_pipeline_spec:
          storage_catalog: 'my_delta_catalog'
          storage_schema: 'my_delta_schema'

이 예제에서는 동기화된 데이터베이스 테이블을 만들고 이에 대한 파이프라인 일정을 사용자 지정합니다. 이미 다음 항목이 있다고 가정합니다.

  • 명명된 데이터베이스 인스턴스 my-database-instance
  • 명명된 표준 카탈로그 my_standard_catalog
  • 명명된 표준 카탈로그의 스키마 default
  • source_delta.schema.customer라는 원본 델타 테이블과 기본 키 c_custkey
resources:
  synced_database_tables:
    my_synced_table:
      name: 'my_standard_catalog.default.my_synced_table'
      database_instance_name: 'my-database-instance'
      logical_database_name: 'test_db'
      spec:
        source_table_full_name: 'source_delta.schema.customer'
        scheduling_policy: SNAPSHOT
        primary_key_columns:
          - c_custkey
        create_database_objects_if_missing: true
        new_pipeline_spec:
          storage_catalog: 'source_delta'
          storage_schema: 'schema'

  jobs:
    sync_pipeline_schedule_job:
      name: sync_pipeline_schedule_job
      description: 'Job to schedule synced database table pipeline.'
      tasks:
        - task_key: synced-table-pipeline
          pipeline_task:
            pipeline_id: ${resources.synced_database_tables.my_synced_table.data_synchronization_status.pipeline_id}
      schedule:
        quartz_cron_expression: '0 0 0 * * ?'

볼륨(Unity 카탈로그)

Type: Map

볼륨은 Databricks 자산 번들에 대한 Python에서 지원됩니다. databricks.bundles.volumes를 참조하세요.

볼륨 리소스 유형을 사용하여 번들의 일부로 Unity 카탈로그의 볼륨을 정의하고 생성할 수 있습니다. 볼륨이 정의된 번들을 배포하는 경우 다음 사항에 유의하세요.

  • 작업 영역에 볼륨이 존재하기 전까지 artifact_path에서 번들에 대한 참조가 불가능합니다. 따라서 Databricks 자산 번들을 사용하여 볼륨을 만들려면 먼저 번들 내에서 볼륨을 정의하고 그것을 배포하여 볼륨을 생성한 후, 후속 배포에서 artifact_path를 참조해야 합니다.
  • 배포 대상이 dev_${workspace.current_user.short_name}로 설정된 경우, 번들에 있는 볼륨에 mode: development 접두사가 추가되지 않습니다. 그러나 이 접두사를 수동으로 구성할 수 있습니다. 사용자 지정 사전 설정참조하세요.
volumes:
  <volume-name>:
    <volume-field-name>: <volume-field-value>
Key Type Description
catalog_name String 스키마와 볼륨의 카탈로그 이름입니다.
comment String 볼륨에 첨부된 주석입니다.
grants Sequence 볼륨과 연결된 권한 부여입니다. 부여를 참조 하세요.
lifecycle Map 리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다. 수명 주기를 참조하세요.
name String 볼륨의 이름입니다.
schema_name String 볼륨이 있는 스키마의 이름입니다.
storage_location String 클라우드의 스토리지 위치입니다.
volume_type String 볼륨 유형은 EXTERNAL 또는 MANAGED 중 하나입니다. 외부 볼륨은 지정된 외부 위치에 있습니다. 관리되는 볼륨은 부모 스키마 또는 부모 카탈로그 또는 메타스토어로 지정된 기본 위치에 있습니다. 관리 볼륨과 외부 볼륨을 참조하세요.

Example

다음 예제에서는 키 my_volume_id사용하여 Unity 카탈로그 볼륨을 만듭니다.

resources:
  volumes:
    my_volume_id:
      catalog_name: main
      name: my_volume
      schema_name: my_schema

Unity 카탈로그 볼륨의 파일에 기록하는 작업을 실행하는 예제 번들을 보려면 번들 예제 GitHub 리포지토리를 참고하세요.

일반적인 물건

허가

Type: Map

해당 보안 주체에 부여할 보안 주체 및 권한을 정의합니다. 권한 부여에 대한 자세한 내용은 권한 표시, 부여 및 해지참조하세요.

Key Type Description
principal String 권한이 부여될 사용자의 이름입니다. 사용자, 그룹 또는 서비스 주체일 수 있습니다.
privileges Sequence 지정된 엔터티에 부여할 수 있는 권한. 유효한 값은 리소스 종류(예: SELECT, , MODIFY, CREATEUSAGE, READ_FILESWRITE_FILES, EXECUTEALL_PRIVILEGES)에 따라 달라집니다.

Example

다음 예제에서는 권한 부여를 사용하여 Unity 카탈로그 스키마를 정의합니다.

resources:
  schemas:
    my_schema:
      name: test-schema
      grants:
        - principal: users
          privileges:
            - SELECT
        - principal: my_team
          privileges:
            - CAN_MANAGE
      catalog_name: main

생명주기

Type: Map

리소스에 대한 수명 주기 설정을 포함합니다. 리소스가 배포되거나 제거될 때 리소스의 동작을 제어합니다.

Key Type Description
prevent_destroy Boolean 리소스가 제거되지 않도록 하는 수명 주기 설정입니다.