次の方法で共有


Databricks Asset Bundles リソース

Databricks アセット バンドルを使用すると、バンドル構成の resources マッピングでバンドルによって使用される Azure Databricks リソースに関する情報を指定できます。 リソース マッピングリソースの主要なリファレンスに関する記事を参照してください。

このページでは、バンドルでサポートされているすべてのリソースの種類の構成リファレンスを提供し、サポートされている各種類の詳細と例を示します。 その他の例については、バンドル構成の例参照してください。

YAML 構成の検証に使用されるバンドルの JSON スキーマは、 Databricks CLI GitHub リポジトリにあります

Tip

既存のリソースに対して YAML を生成するには、databricks bundle generate コマンドを使用します。 databricks バンドルの生成を参照してください。

サポートされているリソース

次の表に、バンドルでサポートされているリソースの種類 (YAML と Python(該当する場合)) を示します。 一部のリソースは、バンドルで定義してバンドルをデプロイすることで作成でき、一部のリソースは、バンドルに含める既存の資産を参照することによってのみ作成できます。

リソース構成では、Databricks REST API オブジェクトに対応する Databricks オブジェクトを 定義します。 REST API オブジェクトでサポートされている作成要求フィールドは、YAML として表され、リソースでサポートされているキーです。 各リソースの対応するオブジェクトのドキュメントへのリンクを次の表に示します。

Tip

databricks bundle validate コマンドは、バンドル構成ファイルで不明なリソース プロパティが見つかった場合に警告を返します。

Resource Python のサポート 対応する REST API オブジェクト
alert Alert オブジェクト
app アプリ オブジェクト
cluster クラスターオブジェクト
dashboard ダッシュボード オブジェクト
database_catalog データベース カタログ オブジェクト
database_instance データベース インスタンス オブジェクト
experiment 実験オブジェクト
job 仕事 ジョブ オブジェクト
モデル (レガシ) モデル (レガシ) オブジェクト
model_serving_endpoint モデルサービングエンドポイントオブジェクト
pipeline Pipelines Pipeline オブジェクト
quality_monitor 品質モニター オブジェクト
registered_model (Unity カタログ) 登録済みモデルオブジェクト
schema (Unity カタログ) Schemas スキーマ オブジェクト
secret_scope シークレット スコープ オブジェクト
sql_warehouse SQL Warehouse オブジェクト
同期データベーステーブル 同期されたデータベース テーブル オブジェクト
ボリューム (Unity Catalog) ボリューム ボリュームオブジェクト

アラート

Type: Map

アラート リソースは 、SQL アラート (v2) を定義します。

alerts:
  <alert-name>:
    <alert-field-name>: <alert-field-value>
Key タイプ 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 アラートに関するアクセス権 「permissions」を参照してください。
query_text String 必須。 実行するクエリのテキスト (たとえば、 SELECT 1)。
run_as Map Optional. アラートの実行に使用する ID を指定します。 このフィールドを使用すると、特定のユーザーまたはサービス プリンシパルとして実行するようにアラートを構成できます。 run_asを参照してください。
  • ユーザー ID の場合: アクティブなワークスペース ユーザーの電子メールに user_name を設定します。 ユーザーはこれを自分の電子メールにのみ設定できます。
  • サービス プリンシパルの場合: service_principal_name をアプリケーション ID に設定します。 servicePrincipal またはユーザーのロールが必要です。 指定しない場合、アラートは要求ユーザーとして実行されます。
schedule Map 必須。 アラートのスケジュール構成。 alert.schedule を参照してください。
warehouse_id String 必須。 アラートにアタッチされている SQL ウェアハウスの ID (たとえば、 a7066a8ef796be84)。

アラート評価

Type: Map

アラートの評価構成。

Key タイプ 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 を参照してください。

アラート・評価・通知

Type: Map

アラートがトリガーされたときに通知するユーザーまたは他の宛先。

Key タイプ Description
notify_on_ok ブール値 Optional. アラートが通常の状態に戻ったときにアラート サブスクライバーに通知するかどうか。
retrigger_seconds Integer Optional. アラートがトリガーされてから、別の通知を送信できるようになるまで待機する秒数。 0に設定するか省略すると、アラートは最初のトリガーの後にそれ以上の通知を送信しません。 この値を 1 に設定すると、アラートは条件が満たされるすべての評価に対して通知を送信でき、通知のために常にリトリガーされます。
subscriptions Sequence Optional. 通知サブスクリプションの順序指定されていない一覧。 alert.evaluation.notification.subscriptions を参照してください。
アラート.評価.通知.サブスクリプション

Type: Sequence

通知サブスクリプションの順序なしリスト。

リスト内の各項目は AlertSubscriptionです。

Key タイプ Description
destination_id String 通知先の ID。
user_email String 通知するユーザーの電子メール アドレス。

アラート.評価.ソース

Type: Map

アラートの評価に使用する結果のソース列。

Key タイプ Description
aggregation String ソース列に適用する集計メソッド。 有効な値は、 SUMCOUNTCOUNT_DISTINCTAVGMEDIANMINMAXSTDDEV
display String ソース列の表示名。
name String クエリ結果のソース列の名前。

アラート評価の閾値

Type: Map

アラートの評価に使用するしきい値には、列または値を指定できます。

Key タイプ Description
column Map しきい値として使用する列参照。 alert.evaluation.source を参照してください。
value Map しきい値として使用するリテラル値。 alert.evaluation.threshold.value を参照してください。
アラート評価しきい値の値

Type: Map

しきい値として使用するリテラル値。 次のいずれかの値型を指定します。

Key タイプ Description
bool_value ブール値 Optional. しきい値のブール値 (たとえば、 true)。
double_value Double Optional. しきい値の数値 (たとえば、 1.25)。
string_value String Optional. しきい値の文字列値 (たとえば、 test)。

アラート・スケジュール

Type: Map

アラートのスケジュール構成。

Key タイプ Description
pause_status String Optional. このスケジュールが一時停止されているかどうか。 有効な値: UNPAUSEDPAUSED。 既定値: 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 Apps の詳細については、「 Databricks Apps」を参照してください。

アプリを追加するには、必要な 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 タイプ Description
budget_policy_id String アプリの予算ポリシー ID。
compute_size String アプリのコンピューティング サイズ。 有効な値は MEDIUM または LARGE ですが、ワークスペースの構成によって異なります。
config Map Deprecated. 代わりに、 app.yaml ファイルでアプリ構成コマンドと環境変数を定義します。 Databricks アプリの構成を参照してください。
description String アプリの説明。
lifecycle Map デプロイまたは破棄されたときのリソースの動作。 ライフサイクルを参照してください。
name String アプリの名前。 名前には、小文字の英数字とハイフンのみを含める必要があります。 ワークスペース内で一意である必要があります。
permissions Sequence アプリのアクセス許可。 「permissions」を参照してください。
resources Sequence アプリのコンピューティング リソース。 app.resources を参照してください。
source_code_path String Databricks アプリのソース コードの ./app ローカル パス。
user_api_scopes Sequence ユーザー API スコープ。

アプリケーション・リソース

Type: Sequence

アプリのコンピューティング リソースの一覧。

リスト内の各項目は AppResourceです。

Key タイプ Description
description String アプリ リソースの説明。
database Map 使用する Lakebase データベースを識別する設定。 app.resources.database を参照してください。
genie_space Map 使用する Genie 空間を識別する設定。 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を参照してください。

アプリ.resources.データベース

Type: Map

使用する Lakebase データベースを識別する設定。

Key タイプ Description
database_name String データベースの名前。
instance_name String データベース インスタンスの名前。
permission String データベースのアクセス許可レベル。 有効な値は CAN_CONNECT_AND_CREATE です。

app.resources.genie_space

Type: Map

使用する Genie 空間を識別する設定。

Key タイプ Description
name String Genie スペースの名前。
permission String スペースのアクセス許可レベル。 有効な値には、 CAN_VIEWCAN_EDITCAN_MANAGECAN_RUNが含まれます。
space_id String Genie 空間の ID ( 550e8400-e29b-41d4-a716-999955440000など)。

アプリケーション.リソース.ジョブ

Type: Map

使用するジョブ リソースを識別する設定。

Key タイプ Description
id String ジョブの ID。
permission String タスクの権限レベル。 有効な値には、 CAN_VIEWCAN_MANAGE_RUNCAN_MANAGEIS_OWNERが含まれます。

app.resources.シークレット

Type: Map

使用する Azure Databricks シークレット リソースを識別する設定。

Key タイプ Description
key String アクセス許可を付与するシークレットのキー。
permission String シークレットのアクセス許可レベル。 有効な値には、 READWRITEMANAGEが含まれます。
scope String シークレット スコープの名前。

app.resources.serving_endpoint (提供エンドポイント)

Type: Map

使用するエンドポイント リソースを提供するモデルを識別する設定。

Key タイプ Description
name String Serving エンドポイントの名前
permission String サービス エンドポイントのアクセス許可レベル。 有効な値には、 CAN_QUERYCAN_MANAGECAN_VIEWが含まれます。

app.resources.sql_warehouse

Type: Map

使用する SQL ウェアハウスを識別する設定。

Key タイプ Description
id String SQL ウェアハウスの ID。
permission String SQL ウェアハウスのアクセス許可レベル。 有効な値には、 CAN_USECAN_MANAGEIS_OWNERが含まれます。

app.resources.uc_securable

Type: Map

使用する Unity カタログ ボリュームを識別する設定。

Key タイプ Description
permission String セキュリティ保護可能な Unity カタログのアクセス許可レベル。 有効値は READ_VOLUME または WRITE_VOLUME です。
securable_full_name String catalog.schema.volume形式のセキュリティ保護可能な Unity カタログの完全な名前。
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 アプリのサンプル バンドルについては、bundle-examples GitHub リポジトリを参照してください。

クラスター

Type: Map

クラスター リソースはクラスターを定義 します

clusters:
  <cluster-name>:
    <cluster-field-name>: <cluster-field-value>
Key タイプ Description
apply_policy_default_values ブール値 true に設定すると、省略されたフィールドに対してポリシーの固定値と既定値が使用されます。 false に設定すると、ポリシーの固定値のみが適用されます。
autoscale Map 負荷に基づいてクラスターを自動的にスケールアップおよびスケールダウンするために必要なパラメーター。 自動スケーリングを参照してください。
autotermination_minutes Integer この時間内に非アクティブになったクラスターは、数分後に自動的に終了します。 設定されていない場合、このクラスターは自動的に終了されません。 指定する場合、しきい値は 10 ~ 10000 分である必要があります。 ユーザーは、この値を 0 に設定して、自動終了を明示的に無効にすることもできます。
aws_attributes Map アマゾン ウェブ サービスで実行されているクラスターに関連する属性。 クラスターの作成時に指定しない場合は、一連の既定値が使用されます。 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 クラスターからデータにアクセスするときに使用するデータ ガバナンス モデル。 有効な値には、 NONESINGLE_USERUSER_ISOLATIONLEGACY_SINGLE_USERLEGACY_TABLE_ACLLEGACY_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 値と同じ値として設定されます。 このフィールドは、node_type_idと共に、virtual_cluster_sizeが設定されている場合は設定しないでください。 driver_node_type_id、node_type_id、およびvirtual_cluster_sizeの両方が指定されている場合は、driver_node_type_idとnode_type_idが優先されます。
enable_elastic_disk ブール値 ローカル ストレージの自動スケール: 有効にすると、Spark ワーカーのディスク領域が不足しているときに、このクラスターによって追加のディスク領域が動的に取得されます。 この機能を使用するには、特定の AWS アクセス許可が正しく機能する必要があります。詳細については、ユーザー ガイドを参照してください。
enable_local_disk_encryption ブール値 クラスター VM のローカル ディスクで LUKS を有効にするかどうか
gcp_attributes Map Google Cloud Platform で実行されているクラスターに関連する属性。 クラスターの作成時に指定しない場合は、一連の既定値が使用されます。 gcp_attributesを参照してください。
init_scripts Sequence init スクリプトを保存するための構成。 任意の数の宛先を指定できます。 スクリプトは、指定された順序で順番に実行されます。 init_scriptsを参照してください。
instance_pool_id String クラスターが属するインスタンス プールの省略可能な ID。
is_single_node ブール値 このフィールドは、 kind = CLASSIC_PREVIEW場合にのみ使用できます。 true に設定すると、Databricks は、単一ノードに関連する custom_tagsspark_conf、および num_workers を自動的に設定します。
kind String このコンピューティング仕様で説明されているコンピューティングの種類。
node_type_id String このフィールドは、単一の値を通じて使用されるリソースをこのクラスターのそれぞれの Spark ノードにエンコードします。 たとえば、Spark ノードはメモリまたはコンピューティング集約型ワークロード用にプロビジョニングされ、最適化されます。 使用可能なノードの種類の一覧は、:method:clusters/listNodeTypes API 呼び出しを使用して取得できます。
num_workers Integer このクラスターに属するワーカー ノードの数。 クラスターには、1 つの Spark Driver と num_workers Executor があり、合計で num_workers + 1 Spark ノードがあります。
permissions Sequence クラスターの権限。 「permissions」を参照してください。
policy_id String クラスターの作成に使用されるクラスター ポリシーの ID (該当する場合)。
runtime_engine String クラスターのランタイム エンジン ( STANDARD または PHOTON) を決定します。
single_user_name String data_security_modeがSINGLE_USERの場合は、単一のユーザー名
spark_conf Map 省略可能なユーザー指定の Spark 構成キーと値のペアのセットを含んでいるオブジェクト。 ユーザーは、 spark.driver.extraJavaOptionsspark.executor.extraJavaOptions を使用して、ドライバーと Executor に追加の JVM オプションの文字列を渡すこともできます。
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 ブール値 このフィールドは、 kind = CLASSIC_PREVIEW場合にのみ使用できます。 effective_spark_version は、 spark_version (Databricks ランタイムリリース)、このフィールド use_ml_runtime、および node_type_id が gpu ノードであるかどうかによって決定されます。
workload_type Map クラスターのワークロードの種類を示すクラスター属性。 workload_typeを参照してください。

クラスターの自動スケール (cluster.autoscale)

Type: Map

負荷に基づいてクラスターを自動的にスケールアップおよびスケールダウンするためのパラメーター。

Key タイプ Description
min_workers Integer 使用率が低い場合にクラスターをスケールダウンできるワーカーの最小数。 これは、作成後にクラスターに含まれるワーカーの初期数でもあります。
max_workers Integer オーバーロード時にクラスターをスケールアップできるワーカーの最大数。 max_workers は厳密に min_workersより大きくする必要があります。

cluster.aws_attributes

Type: Map

アマゾン ウェブ サービスで実行されているクラスターに関連する属性。

Key タイプ Description
zone_id String クラスターが存在する可用性ゾーン/データセンターの識別子。 この文字列は、 us-west-2aのような形式になります。
availability String first_on_demandを超える後続のすべてのノードで使用される可用性の種類。 有効な値は、 SPOTON_DEMANDSPOT_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 EBS gp3 ボリュームあたりのスループット (1 秒あたりの MiB)。

Type: Map

Microsoft Azure で実行されているクラスターに関連する属性。

Key タイプ Description
first_on_demand Integer クラスターの最初の first_on_demand ノードは、オンデマンド インスタンスに配置されます。
availability String first_on_demandを超える後続のすべてのノードで使用される可用性の種類。 有効な値は、 SPOT_AZUREON_DEMAND_AZURESPOT_WITH_FALLBACK_AZUREです。
spot_bid_max_price Number Azure スポット インスタンスの最大価格。 -1を使用して最低価格を指定します。

cluster.gcp_attributes

Type: Map

Google Cloud Platform で実行されているクラスターに関連する属性。

Key タイプ Description
use_preemptible_executors ブール値 プリエンプティブ 実行プログラムを使用するかどうか。 プリエンプティブルエグゼキューターは、いつでも GCE によって奪われる可能性のあるプリエンプティブル GCE インスタンスです。
google_service_account String Databricks クラスター VM インスタンスによって使用される Google サービス アカウント。
local_ssd_count Integer クラスター内の各ノードにアタッチするローカル SSD の数。 既定値は 0 です。
zone_id String クラスターが存在する可用性ゾーン/データセンターの識別子。
availability String すべてのノードに使用される可用性の種類。 有効な値は、 PREEMPTIBLE_GCPON_DEMAND_GCPPREEMPTIBLE_WITH_FALLBACK_GCPです。
boot_disk_size Integer ブート ディスクのサイズ (GB 単位)。 通常、値の範囲は 100 から 1000 です。

クラスター.クラスター_ログ_コンフ

Spark ログを長期的なストレージの宛先に配信するための構成。

Key タイプ Description
dbfs Map クラスター ログ配信の DBFS の場所。 dbfs を参照してください。
s3 Map クラスター ログ配信の S3 の場所。 s3 を参照してください。
volumes Map クラスター ログ配信のボリュームの場所。 ボリュームを参照してください

cluster.cluster_log_conf.dbfs

Type: Map

クラスター ログ配信の DBFS の場所。

Key タイプ Description
destination String クラスター ログ配信の DBFS パス (たとえば、 dbfs:/cluster-logs)。

クラスタ.クラスタ_ログ_コンフィグ.s3

Type: Map

クラスター ログ配信の S3 の場所。

Key タイプ Description
destination String クラスター ログ配信の S3 URI (たとえば、 s3://my-bucket/cluster-logs)。
region String S3 バケットの AWS リージョン。
endpoint String S3 エンドポイント URL (省略可能)。
enable_encryption ブール値 クラスター ログの暗号化を有効にするかどうかを指定します。
encryption_type String 暗号化の種類。 有効な値には、 SSE_S3SSE_KMSが含まれます。
kms_key String 暗号化用の KMS キー ARN ( SSE_KMSを使用する場合)。
canned_acl String クラスター ログに適用する、指定された ACL。

cluster.cluster_log_conf.volumes

Type: Map

クラスター ログ配信のボリュームの場所。

Key タイプ Description
destination String クラスター ログ配信のボリューム パス (たとえば、 /Volumes/catalog/schema/volume/cluster_log)。

cluster.docker_image

Type: Map

カスタム Docker イメージの構成。

Key タイプ Description
url String Docker イメージの URL。
basic_auth Map Docker リポジトリの基本認証。 basic_authを参照してください。

cluster.docker_image.basic_auth

Type: Map

Docker リポジトリの基本認証。

Key タイプ Description
username String Docker レジストリ認証のユーザー名。
password String Docker レジストリ認証のパスワード。

クラスター.init_scripts(初期スクリプト)

Type: Map

init スクリプトを保存するための構成。 少なくとも 1 つの場所の種類を指定する必要があります。

Key タイプ Description
dbfs Map init スクリプトの DBFS の場所。 dbfs を参照してください。
workspace Map init スクリプトのワークスペースの場所。 「workspace」を参照してください。
s3 Map S3 にある init スクリプトの場所。 s3 を参照してください。
abfss Map ABFSS の init スクリプトの場所。 abfss を参照してください。
gcs Map init スクリプトの GCS の場所。 gcs を参照してください。
volumes Map UC ボリュームの init スクリプトの場所。 ボリュームを参照してください

cluster.init_scripts.dbfs

Type: Map

init スクリプトの DBFS の場所。

Key タイプ Description
destination String init スクリプトの DBFS パス。

cluster.init_scripts.workspace

Type: Map

init スクリプトのワークスペースの場所。

Key タイプ Description
destination String init スクリプトのワークスペース パス。

cluster.init_scripts.s3

Type: Map

S3 にある init スクリプトの場所。

Key タイプ Description
destination String init スクリプトの S3 URI。
region String S3 バケットの AWS リージョン。
endpoint String S3 エンドポイント URL (省略可能)。

cluster.init_scripts.abfss

Type: Map

ABFSS の init スクリプトの場所。

Key タイプ Description
destination String init スクリプトの ABFSS パス。

クラスター・イニット・スクリプツ・GCS

Type: Map

init スクリプトの GCS の場所。

Key タイプ Description
destination String init スクリプトの GCS パス。

クラスター.init_scripts.ボリューム

Type: Map

init スクリプトのボリュームの位置。

Key タイプ Description
destination String init スクリプトの UC ボリューム パス。

クラスター.ワークロードタイプ

Type: Map

クラスターのワークロードの種類を示すクラスター属性。

Key タイプ Description
clients Map クラスターを使用できるクライアントの種類を定義します。 クライアントを参照してください。

クラスタ.workload_type.クライアント

Type: Map

このコンピューティング ワークロードのクライアントの種類。

Key タイプ Description
jobs ブール値 クラスターでジョブを実行できるかどうか。
notebooks ブール値 クラスターでノートブックを実行できるかどうか。

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でノートブックを実行するために使用するクラスターとして設定します。

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 タイプ Description
display_name String ダッシュボードの表示名。
embed_credentials ブール値 バンドルデプロイ ID の資格情報を使用して、すべてのダッシュボード ビューアーに対してクエリを実行するかどうかを指定します。 falseに設定されている場合は、ビューアーの資格情報が使用されます。 既定値は false です。
etag String ダッシュボードのETag。 最後の読み取り以降にダッシュボードが変更されていないことを確認するために、必要に応じて更新プログラムに提供できます。
file_path String ファイル名を含むダッシュボード 資産のローカル パス。 エクスポートされたダッシュボードには、常にファイル拡張子が .lvdash.json
permissions Sequence ダッシュボードのアクセス許可。 「permissions」を参照してください。
serialized_dashboard Any シリアル化された文字列形式のダッシュボードの内容。
warehouse_id String ダッシュボードの実行に使用されるウェアハウス ID。

Example

次の例では、NYC タクシー乗車分析 ダッシュボード サンプルを 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 タイプ Description
create_database_if_not_exists ブール値 データベースが存在しない場合にデータベースを作成するかどうか。
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 データベース インスタンスは、ストレージリソースとコンピューティング リソースを管理し、ユーザーが接続するエンドポイントを提供します。

Important

データベース インスタンスと共にバンドルをデプロイすると、インスタンスは直ちに実行を開始し、価格の対象となります。 Lakebase の価格を参照してください。

データベース インスタンスの詳細については、「 データベース インスタンスとは」を参照してください。

database_instances:
  <database_instance-name>:
    <database_instance-field-name>: <database_instance-field-value>
Key タイプ Description
capacity String インスタンスの SKU。 有効な値は、 CU_1CU_2CU_4CU_8です。
custom_tags Sequence インスタンスに関連付けられているカスタム タグを指定するキーと値のペアの一覧。
enable_pg_native_login ブール値 インスタンスで PG ネイティブ パスワード ログインが有効になっているかどうか。 既定値は true です。
enable_readable_secondaries ブール値 セカンダリが読み取り専用トラフィックを処理できるようにするかどうかを指定します。 既定値は false です。
lifecycle Map リソースのライフサイクル設定が含まれています。 デプロイまたは破棄されたときのリソースの動作を制御します。 ライフサイクルを参照してください。
name String インスタンスの名前。 これは、インスタンスの一意の識別子です。
node_count Integer 1 つのプライマリと 0 以上のセカンダリで構成される、インスタンス内のノードの数。 既定値は 1 プライマリと 0 セカンダリです。
parent_instance_ref Map 親インスタンスの参照。 これは、インスタンスが子インスタンスの場合にのみ使用できます。 親インスタンスを参照してください。
permissions Sequence データベース インスタンスのアクセス許可。 「permissions」を参照してください。
retention_window_in_days Integer インスタンスの保持期間。 これは、履歴データが保持される日数の時間枠です。 既定値は 7 日間です。 有効な値は 2 ~ 35 日です。
stopped ブール値 インスタンスが停止されているかどうか。
usage_policy_id String インスタンスに関連付ける目的の使用ポリシー。

データベースインスタンスの親インスタンス参照 (database_instance.parent_instance_ref)

Type: Map

親インスタンスの参照。 これは、インスタンスが子インスタンスの場合にのみ使用できます。

Key タイプ Description
branch_time String ref データベース インスタンスの分岐時間。 親 ref インスタンスの場合、これはインスタンスが作成された親インスタンスの時点です。 子refインスタンスの場合、これは子インスタンスが作成された時点を示しています。
lsn String ref データベース インスタンスのユーザー指定の 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 タイプ Description
artifact_location String 実験の成果物が格納される場所。
lifecycle Map リソースのライフサイクル設定が含まれています。 デプロイまたは破棄されたときのリソースの動作を制御します。 ライフサイクルを参照してください。
name String 実験を識別するフレンドリーな名前。 実験名は、Databricks ワークスペースの絶対パスである必要があります (たとえば、 /Workspace/Users/someone@example.com/my_experiment)。
permissions Sequence 実験の権限設定。 「permissions」を参照してください。
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 Asset Bundles を使用したジョブの開発」を参照してください。

jobs:
  <job-name>:
    <job-field-name>: <job-field-value>
Key タイプ Description
budget_policy_id String このジョブに使用するユーザー指定の予算ポリシーの ID。 指定しない場合、ジョブの作成時または変更時に既定の予算ポリシーが適用される場合があります。 このワークロードで使用される予算ポリシーについては、 effective_budget_policy_id を参照してください。
continuous Map このジョブのための、オプションの継続的プロパティ。 継続的プロパティを使用すると、常に 1 回の実行が実行されます。 使用できる schedulecontinuous は 1 つだけです。 「連続」を参照してください。
deployment Map 外部ソースによって管理されるジョブのデプロイ情報。 デプロイを参照してください。
description String ジョブに関する説明 (オプション)。 UTF-8 エンコードの最大長は 2,7700 文字です。
edit_mode String ジョブの編集モード ( UI_LOCKED または EDITABLE)。
email_notifications Map このジョブの実行の開始時または完了時、およびこのジョブが削除されたときに通知される、オプションの電子メール アドレスのセット。 email_notificationsを参照してください。
environments Sequence このジョブのサーバーレス タスクで参照できるタスク実行環境の仕様の一覧。 サーバーレス タスクには環境が必要です。 サーバーレス ノートブック タスクの場合、ノートブック環境パネルで環境にアクセスできます。 その他のサーバーレス タスクでは、タスク設定でenvironment_keyを使用してタスク環境を指定する必要があります。 環境を参照してください。
format String Deprecated. 仕事の形式。
git_source Map タスクで使用されるソース コードを含むリモート Git リポジトリの省略可能な仕様。 job.git_sourceを参照してください。
大事な:git_source フィールドとタスク source フィールドを GIT に設定することは、バンドルには推奨されません。これは、ローカル相対パスが Git リポジトリ内の同じコンテンツを指さない場合があり、バンドルでは、デプロイされたジョブがデプロイ元のローカル コピーと同じコンテンツを持つ必要があるためです。
代わりに、リポジトリをローカルに複製し、タスクのソースがワークスペースになるように、このリポジトリ内にバンドル プロジェクトを設定します。
health Map このジョブに対して定義できる正常性規則のセット (オプション)。 健康を参照してください。
job_clusters Sequence このジョブのタスクで共有および再利用できるジョブ クラスター仕様の一覧。 job_clustersを参照してください。
max_concurrent_runs Integer ジョブの同時実行の最大許容数 (省略可能)。 同じジョブの複数の実行を同時に実行できるようにする場合は、この値を設定します。
name String ジョブの省略可能な名前。 UTF-8 エンコードの最大長は 4,096 バイトです。
notification_settings Map このジョブの email_notificationswebhook_notifications のそれぞれに通知を送信するときに使用されるオプションの通知設定。 notification_settingsを参照してください。
parameters Sequence ジョブ レベルのパラメーター定義。
performance_target String サーバーレスでの実行のパフォーマンスまたはコスト効率を定義します。
permissions Sequence ジョブのアクセス許可。 「permissions」を参照してください。
queue Map ジョブのキュー設定。 キューを参照してください。
run_as Map 書き込み専用の設定。 ジョブを実行するユーザーまたはサービス プリンシパルを指定します。 指定しない場合、ジョブはジョブを作成したユーザーとして実行されます。 user_nameまたはservice_principal_nameを指定する必要があります。 そうでない場合は、エラーが発生します。 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 タイプ Description
pause_status String 継続的ジョブが一時停止されているかどうか。 有効な値: PAUSEDUNPAUSED
task_retry_mode String 連続ジョブがタスク レベルの再試行を適用する方法を示します。 有効値は NEVER または ON_FAILURE です。 既定値は NEVER です。

ジョブ.デプロイメント

Type: Map

外部ソースによって管理されるジョブのデプロイ情報。

Key タイプ Description
kind String デプロイの種類。 たとえば、「 BUNDLE 」のように入力します。
metadata_file_path String デプロイのメタデータ ファイルへのパス。

ジョブ.メール通知

Type: Map

ジョブ実行の電子メール通知設定。

Key タイプ Description
on_start Sequence 実行の開始時に通知する電子メール アドレスの一覧。
on_success Sequence 実行が成功したときに通知する電子メール アドレスの一覧。
on_failure Sequence 実行が失敗したときに通知する電子メール アドレスの一覧。
on_duration_warning_threshold_exceeded Sequence 実行時間が警告しきい値を超えたときに通知する電子メール アドレスの一覧。
no_alert_for_skipped_runs ブール値 スキップされた実行のアラートの送信をスキップするかどうかを指定します。

ジョブ.環境

Type: Sequence

ジョブのサーバーレス タスクによって参照できるタスク実行環境の仕様の一覧。

リスト内の各項目は JobEnvironmentです。

Key タイプ Description
environment_key String 環境のキー。 ジョブ内で一意である必要があります。
spec Map サーバーレス環境を表すエンティティ。 job.environments.spec を参照してください。

job.environments.spec

Type: Map

サーバーレス環境を表すエンティティ。

Key タイプ Description
client String Deprecated. クライアントのバージョン。
dependencies Sequence この環境の pip のバージョンでサポートされている pip 依存関係の一覧。
environment_version String 必須。 環境で使用される環境バージョン。 各バージョンには、特定の Python バージョンと一連の Python パッケージが付属しています。 バージョンは、整数で構成される文字列です。

job.git_source

Type: Map

ジョブ ソース コードの Git リポジトリ構成。

Key タイプ Description
git_branch String このジョブでチェックアウトして使用するブランチ名。 このフィールドは、 git_tag または git_commitと組み合わせて指定することはできません。
git_commit String このジョブによってチェックアウトされ、使用されることをコミットします。 このフィールドは、 git_branch または git_tagと組み合わせて指定することはできません。
git_provider String Git リポジトリをホストするために使用されるサービスの一意識別子。 この値は大文字と小文字を区別しません。 有効な値は、 gitHubbitbucketCloudgitLabazureDevOpsServicesgitHubEnterprisebitbucketServergitLabEnterpriseEditionです。
git_snapshot Map ジョブの実行時のリモート リポジトリの読み取り専用状態。 このフィールドはジョブ実行時にのみ含まれます。 git_snapshotを参照してください。
git_tag String チェックアウトしてこのジョブで使用するタグの名前。 このフィールドは、 git_branch または git_commitと組み合わせて指定することはできません。
git_url String このジョブによって複製されるリポジトリの URL。

job.git_source.git_snapshot

Type: Map

読み取り専用のコミット情報スナップショット。

Key タイプ Description
used_commit String 実行の実行に使用されたコミット。 git_branchが指定されている場合、これは実行時に分岐の HEAD を指します。git_tagが指定された場合、これはタグが指すコミットを指します。

ジョブヘルス

Type: Map

ジョブのヘルスモニタリング設定。

Key タイプ Description
rules Sequence ジョブの健全性ルールの一覧。 各ルールには、 metricop (演算子) と valueが含まれます。 job.health.rules を参照してください。

ジョブの健全性ルール

Type: Sequence

ジョブの健全性ルールの一覧。

リスト内の各項目は JobHealthRuleです。

Key タイプ 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 タイプ Description
job_cluster_key String ジョブ クラスターの一意の名前。 このフィールドは必須であり、ジョブ内で一意である必要があります。 JobTaskSettings は、このフィールドを参照して、タスク実行用に起動するクラスターを決定できます。
new_cluster Map new_cluster場合は、タスクごとに作成されるクラスターの説明。 「 クラスター」を参照してください。

ジョブ.通知設定

Type: Map

ジョブのすべての通知に適用される通知設定。

Key タイプ Description
no_alert_for_skipped_runs ブール値 スキップされた実行のアラートの送信をスキップするかどうかを指定します。
no_alert_for_canceled_runs ブール値 取り消された実行のアラートの送信をスキップするかどうかを指定します。

ジョブキュー

Type: Map

ジョブのキュー設定。

Key タイプ Description
enabled ブール値 ジョブのキューを有効にするかどうかを指定します。

ジョブ.スケジュール

Type: Map

定期的なジョブ実行の構成をスケジュールします。

Key タイプ Description
quartz_cron_expression String ジョブの実行時を指定する Quartz 構文を使用した Cron 式。 たとえば、 0 0 9 * * ? は毎日午前 9 時 (UTC) にジョブを実行します。
timezone_id String スケジュールのタイムゾーン。 たとえば、America/Los_Angeles または UTC です。
pause_status String スケジュールが一時停止されているかどうか。 有効な値: PAUSEDUNPAUSED

ジョブ.トリガー

Type: Map

イベント ドリブン ジョブ実行のトリガー構成。

Key タイプ Description
file_arrival Map ファイルの到着に基づいてトリガーされます。 file_arrivalを参照してください。
table Map テーブルに基づいてトリガーします。 を参照してください。
table_update Map テーブルの更新に基づいてトリガーします。 「table_update」を参照してください。
periodic Map 定期的なトリガー。 定期的を参照してください。

ジョブ・トリガー・ファイル到着

Type: Map

ファイルの到着に基づいて設定を開始します。

Key タイプ Description
url String 新しいファイルを監視するファイル パス。
min_time_between_triggers_seconds Integer トリガー イベント間の最小時間 (秒)。
wait_after_last_change_seconds Integer 最後のファイルが変更されてからトリガーされるまでの待機時間 (秒単位)。

ジョブ.トリガー.テーブル

Type: Map

テーブルに基づいて設定を開始します。

Key タイプ Description
table_names Sequence 監視するテーブル名の一覧。
condition String ジョブをトリガーするために満たす必要がある SQL 条件。

ジョブ.トリガー.テーブルアップデート

Type: Map

テーブルの更新に基づいてプロセスをトリガーします。

Key タイプ Description
table_names Sequence 更新を監視するテーブル名の一覧。
condition String ジョブをトリガーするために満たす必要がある SQL 条件。
wait_after_last_change_seconds Integer トリガーする前の最後のテーブルの更新後の待機時間 (秒単位)。

ジョブ.トリガー.定期的

Type: Map

定期的なトリガー構成。

Key タイプ Description
interval Integer 定期的なトリガーの間隔値。
unit String 間隔の時間の単位。 有効な値: SECONDSMINUTESHOURSDAYSWEEKS

ジョブ.webhook通知

Type: Map

ジョブ実行のためのWebhook通知設定。

Key タイプ Description
on_start Sequence 実行の開始時に通知する Webhook 通知 ID の一覧。
on_success Sequence 実行が成功したときに通知する Webhook 通知 ID の一覧。
on_failure Sequence 実行が失敗したときに通知する Webhook 通知 ID の一覧。
on_duration_warning_threshold_exceeded Sequence 実行時間が警告しきい値を超えたときに通知する Webhook 通知 ID の一覧。

Examples

次の例では、1 つのノートブック タスクでリソース キー hello-job を持つジョブを定義します。

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

次の例では、SQL ノートブックを使用してジョブを定義します。

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 タイプ Description
ai_gateway Map サービス エンドポイントの AI ゲートウェイ構成。 注: 現在サポートされているのは、外部モデルとプロビジョニング済みのスループット エンドポイントのみです。 ai_gatewayを参照してください。
config Map サービス エンドポイントのコア構成。 構成を参照してください。
name String Serving エンドポイントの名前 このフィールドは必須であり、Databricks ワークスペース全体で一意である必要があります。 エンドポイント名は、英数字、ダッシュ、およびアンダースコアで構成できます。
permissions Sequence エンドポイントのアクセス許可を提供するモデル。 「permissions」を参照してください。
rate_limits Sequence Deprecated. サービス エンドポイントに適用されるレート制限。 AI ゲートウェイを使用してレート制限を管理します。
route_optimized ブール値 サービス エンドポイントのルート最適化を有効にします。
tags Sequence サービス エンドポイントにアタッチされ、課金ログに自動的に反映されるタグ。

モデルサービングエンドポイント.aiゲートウェイ

Type: Map

サービス エンドポイントの AI ゲートウェイ構成。

Key タイプ 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 タイプ Description
input Map safetypiiなどのフィールドを使用した入力ガードレールの構成。
output Map safetypiiなどのフィールドを含む出力ガードレールの構成。
invalid_keywords Sequence ブロックするキーワードの一覧。

モデル提供エンドポイント.ai_gateway.推論テーブル構成

Type: Map

Unity カタログ テーブルへの推論ログの構成。

Key タイプ Description
catalog_name String Unity カタログ内のカタログの名前。
schema_name String Unity カタログ内のスキーマの名前。
table_name_prefix String 推論テーブル名のプレフィックス。
enabled ブール値 推論テーブルのログ記録が有効かどうか。

モデル配信エンドポイント.ai_gateway.利用状況追跡設定

Type: Map

使用状況を追跡するための AI ゲートウェイ構成。

Key タイプ Description
enabled ブール値 使用状況の追跡が有効になっているかどうか。

model_serving_endpoint.config

Type: Map

サービス エンドポイントのコア構成。

Key タイプ Description
served_entities Sequence サービスを提供するエンドポイントの提供されるエンティティの一覧。 提供される各エンティティには、 entity_nameentity_versionworkload_sizescale_to_zero_enabledworkload_typeenvironment_varsなどのフィールドが含まれます。
served_models Sequence (非推奨: 代わりに served_entities を使用) サービスを提供するエンドポイントの提供されるモデルの一覧。
traffic_config Map サービス エンドポイントへの呼び出しのルーティング方法を定義するトラフィック構成。 traffic_configを参照してください。
auto_capture_config Map Unity カタログへの要求と応答を自動的にログに記録する推論テーブルの構成。 auto_capture_configを参照してください。

モデル サービング エンドポイント設定.トラフィック設定

Type: Map

サービス エンドポイントへの呼び出しのルーティング方法を定義するトラフィック構成。

Key タイプ Description
routes Sequence トラフィック分散のルートの一覧。 各ルートには、 served_model_nametraffic_percentageが含まれています。

model_serving_endpoint.config.auto_capture_config

Type: Map

Unity カタログへの要求と応答を自動的にログに記録する推論テーブルの構成。

Key タイプ Description
catalog_name String Unity カタログ内のカタログの名前。
schema_name String Unity カタログ内のスキーマの名前。
table_name_prefix String 推論テーブル名のプレフィックス。
enabled ブール値 推論テーブルのログ記録が有効かどうか。

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 タイプ Description
allow_duplicate_names ブール値 false の場合、名前が別のパイプラインの名前と競合する場合、デプロイは失敗します。
budget_policy_id String このパイプラインの予算ポリシー。
catalog String このパイプラインからデータを発行する先の、Unity Catalog のカタログ。 targetが指定されている場合、このパイプライン内のテーブルはtarget内のcatalog スキーマ (たとえば、catalog.target.table) に発行されます。 targetが指定されていない場合、データは Unity カタログに発行されません。
channel String 使用する Lakeflow Spark 宣言型パイプラインのバージョンを指定する Lakeflow Spark 宣言パイプライン リリース チャネル。
clusters Sequence このパイプライン デプロイのクラスター設定。 「 クラスター」を参照してください。
configuration Map このパイプライン実行の構成。
continuous ブール値 パイプラインが継続的かトリガーされるか。 これにより trigger が置き換えられます。
deployment Map このパイプラインの展開タイプ。 デプロイを参照してください。
development ブール値 パイプラインが開発モードであるかどうかを示します。 既定は false です。
dry_run ブール値 パイプラインがドライ ラン パイプラインかどうか。
edition String パイプライン製品のエディション。
environment Map サーバーレス コンピューティングに依存関係をインストールするために使用される、このパイプラインの環境仕様。 環境を参照してください。 このキーは、Databricks CLI バージョン 0.258 以降でのみサポートされています。
event_log Map このパイプラインのイベント ログ構成。 event_logを参照してください。
filters Map デプロイされたグラフに含めるパイプライン パッケージを決定するフィルター。 フィルターを参照してください。
id String このパイプラインの一意識別子。
ingestion_definition Map マネージド インジェスト パイプラインの構成。 これらの設定は、 librariesschematarget、または catalog の設定では使用できません。 ingestion_definitionを参照してください。
libraries Sequence このデプロイに必要なライブラリまたはコードの一覧。 pipeline.libraries を参照してください。
lifecycle Map リソースのライフサイクル設定が含まれています。 デプロイまたは破棄されたときのリソースの動作を制御します。 ライフサイクルを参照してください。
name String このパイプラインのフレンドリ名。
notifications Sequence このパイプラインの通知設定。
permissions Sequence パイプラインのアクセス許可。 「permissions」を参照してください。
photon ブール値 このパイプラインに対して Photon が有効になっているかどうか。
root_path String このパイプラインのルート パス。 これは、Databricks ユーザー インターフェイスでパイプラインを編集するときにルート ディレクトリとして使用され、パイプラインの実行中に Python ソースを実行するときに sys.path に追加されます。
run_as Map パイプラインが実行される ID。 指定しない場合、パイプラインはパイプラインを作成したユーザーとして実行されます。 user_nameまたはservice_principal_nameのみを指定できます。 両方を指定すると、エラーが発生します。 run_asを参照してください。
schema String テーブルの読み取りまたはパブリッシュ先の既定のスキーマ (データベース)。
serverless ブール値 このパイプラインに対してサーバーレス コンピューティングが有効になっているかどうか。
storage String チェックポイントとテーブルを格納するための DBFS ルート ディレクトリ。
tags Map パイプラインに関連付けられているタグのマップ。 これらはクラスター タグとしてクラスターに転送されるため、同じ制限が適用されます。 パイプラインには最大 25 個のタグを追加できます。
target String このパイプラインにテーブルを追加するターゲット スキーマ (データベース)。 schemaまたはtargetのいずれかを指定する必要があります。 Unity カタログに発行するには、 catalogも指定します。 このレガシ フィールドは、 schema フィールドを優先してパイプラインを作成するために非推奨になりました。

パイプライン.デプロイメント

Type: Map

パイプラインの展開タイプの構成。

Key タイプ Description
kind String デプロイの種類。 たとえば、「 BUNDLE 」のように入力します。
metadata_file_path String デプロイのメタデータ ファイルへのパス。

パイプライン環境

Type: Map

サーバーレス コンピューティングに依存関係をインストールするための環境仕様。

Key タイプ Description
dependencies Sequence この環境の pip のバージョンでサポートされている pip 依存関係の一覧。 各依存関係は pip 要件ファイル行です

パイプライン.イベントログ

Type: Map

パイプラインのイベント ログ構成。

Key タイプ Description
catalog String イベント ログが発行される Unity カタログ。
name String Unity カタログに発行されるイベントログの名前。
schema String イベント ログが発行される Unity カタログ スキーマ。

パイプラインフィルター

Type: Map

デプロイされたグラフに含めるパイプライン パッケージを決定するフィルター。

Key タイプ Description
include Sequence 含めるパッケージ名の一覧。
exclude Sequence 除外するパッケージ名の一覧。

パイプライン.インジェスション定義

Type: Map

マネージド インジェスト パイプラインの構成。 これらの設定は、 librariesschematarget、または catalog の設定では使用できません。

Key タイプ Description
connection_name String インジェストに使用する接続の名前。
ingestion_gateway_id String インジェスト ゲートウェイの ID。
objects Sequence 必須。 レプリケートするテーブルとレプリケートされるテーブルの宛先を指定する設定。 各オブジェクトには、 SchemaSpecTableSpec、または ReportSpec を指定できます。
source_configuration Map カタログ レベルのソース構成パラメーター。 source_configurationを参照してください。
table_configuration Map インジェスト テーブルの構成。 table_configurationを参照してください。

SchemaSpec

Type: Map

スキーマからすべてのテーブルを取り込むためのスキーマ オブジェクトの仕様。

Key タイプ Description
source_schema String 取り込むソース スキーマの名前。
destination_catalog String Unity カタログ内の宛先カタログの名前。
destination_schema String Unity カタログ内の宛先スキーマの名前。
table_configuration Map このスキーマ内のすべてのテーブルに適用する構成。 pipeline.ingestion_definition.table_configuration を参照してください。

TableSpec

Type: Map

特定のテーブルを取り込むためのテーブル オブジェクトの仕様。

Key タイプ 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 タイプ 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 を参照してください。

パイプライン.インジェスト定義.ソース構成

Type: Map

ソースの構成。

Key タイプ Description
catalog Map カタログ レベルのソース構成パラメーター。 カタログを参照してください。
pipeline.ingestion_definition.source_configuration.catalog

Type: Map

カタログ レベルのソース構成パラメーター

Key タイプ Description
postgres Map Postgres 固有のカタログ レベルの構成パラメーター。 論理レプリケーションに使用する Postgres スロット構成を表すslot_configである 1 つのMap キーが含まれています。
source_catalog String 源カタログ名。

パイプライン.インジェスション定義.テーブル構成

Type: Map

インジェスト テーブルの構成オプション。

Key タイプ 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 タイプ Description
file Map パイプラインを定義し、Databricks Repos に格納されるファイルへのパス。 pipeline.libraries.file を参照してください。
glob Map ソース コードを含める統合フィールド。 各エントリには、ノートブック パス、ファイル パス、または /**終了するフォルダー パスを指定できます。 このフィールドは、 notebook または fileと一緒に使用することはできません。 pipeline.libraries.glob を参照してください。
notebook Map パイプラインを定義し、Databricks ワークスペースに格納されるノートブックへのパス。 pipeline.libraries.notebook を参照してください
whl String このフィールドは非推奨です

パイプライン.ライブラリ.ファイル

Type: Map

パイプラインを定義し、Databricks Repos に格納されるファイルへのパス。

Key タイプ Description
path String ソース コードの絶対パス。

pipeline.libraries.glob

Type: Map

ソース コードを含める統合フィールド。 各エントリには、ノートブック パス、ファイル パス、または /**終了するフォルダー パスを指定できます。 このフィールドは、 notebook または fileと一緒に使用することはできません。

Key タイプ Description
include String パイプラインに含めるソース コード

パイプライン.ライブラリー.ノートブック

Type: Map

パイプラインを定義し、Databricks ワークスペースに格納されるノートブックへのパス。

Key タイプ 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

パイプライン構成のその他の例については、「 パイプラインの構成」を参照してください。

quality_monitor(Unity カタログ)

Type: Map

quality_monitor リソースを使用すると、Unity カタログ のテーブル モニターを定義できます。 モニターの詳細については、「 データ プロファイル」を参照してください。

quality_monitors:
  <quality_monitor-name>:
    <quality_monitor-field-name>: <quality_monitor-field-value>
Key タイプ 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 ブール値 データ品質メトリックを要約する既定のダッシュボードの作成をスキップするかどうか。
slicing_exprs Sequence ターゲット分析用にデータをスライスする列式の一覧。 データは各式によって個別にグループ化され、述語とその補数ごとに個別のスライスが作成されます。 カーディナリティの高い列の場合、頻度別の一意の値の上位 100 個のみがスライスを生成します。
snapshot Map スナップショット テーブルを監視するための構成。 スナップショットを参照してください。
table_name String テーブルの完全な名前。
time_series Map 時系列テーブルを監視するための構成。 time_seriesを参照してください。
warehouse_id String ダッシュボード作成用のウェアハウスを指定するオプションの引数。 指定しない場合は、一番初めに稼働中のウェアハウスが使用されます。

クオリティモニター.カスタムメトリクス

Type: Sequence

カスタム メトリック定義の一覧。

リスト内の各項目は CustomMetricです。

Key タイプ Description
definition String メトリックの計算方法を指定する SQL 式の Jinja テンプレート。 メトリック定義の作成を参照してください。
input_columns Sequence メトリックを計算する必要がある入力テーブル内の列名の一覧。 :tableを使用して、メトリックに複数の列からの情報が必要であることを示すことができます。
name String 出力テーブル内のメトリックの名前。
output_data_type String カスタム メトリックの出力の種類。
type String CUSTOM_METRIC_TYPE_AGGREGATECUSTOM_METRIC_TYPE_DERIVED、またはCUSTOM_METRIC_TYPE_DRIFTのいずれかです。 CUSTOM_METRIC_TYPE_AGGREGATECUSTOM_METRIC_TYPE_DERIVEDのメトリックは 1 つのテーブルで計算されますが、CUSTOM_METRIC_TYPE_DRIFTではベースライン テーブルと入力テーブル間、または 2 つの連続する時間枠でメトリックが比較されます。
  • CUSTOM_METRIC_TYPE_AGGREGATE: テーブル内の既存の列にのみ依存します
  • CUSTOM_METRIC_TYPE_DERIVED: 以前に計算された集計メトリックに依存する
  • CUSTOM_METRIC_TYPE_DRIFT: 以前に算出された集計メトリックまたは派生メトリックに依存

品質モニター.データ分類設定

Type: Map

データ分類の構成。

Key タイプ Description
enabled ブール値 データ分類が有効かどうか。

品質モニター.推論ログ

Type: Map

推論ログを監視するための構成。

Key タイプ Description
granularities Sequence 推論ログを集計するための時間の細分性 (たとえば、 ["1 day"])。
model_id_col String モデル ID を含む列の名前。
prediction_col String 予測を含む列の名前。
timestamp_col String タイムスタンプを含む列の名前。
problem_type String ML の問題の種類。 有効な値には、 PROBLEM_TYPE_CLASSIFICATIONPROBLEM_TYPE_REGRESSIONが含まれます。
label_col String ラベルを含む列の名前 (正解)。

品質モニター.通知

Type: Map

モニターの通知設定。

Key タイプ Description
on_failure Map モニターが失敗したときの通知設定。 on_failureを参照してください。
on_new_classification_tag_detected Map 新しい分類タグが検出されたときの通知設定。 on_new_classification_tag_detectedを参照してください。

品質モニター.通知.失敗時

Type: Map

モニターが失敗したときの通知設定。

Key タイプ Description
email_addresses Sequence モニター障害時に通知する電子メール アドレスの一覧。

quality_monitor.notifications.新しい分類タグが検出されました

Type: Map

新しい分類タグが検出されたときの通知設定。

Key タイプ Description
email_addresses Sequence 新しい分類タグが検出されたときに通知する電子メール アドレスの一覧。

品質モニター.スケジュール

Type: Map

メトリックテーブルの自動更新とリフレッシュのスケジュールを設定します。

Key タイプ Description
quartz_cron_expression String Quartz 構文を使用した Cron 式。 たとえば、 0 0 8 * * ? は毎日午前 8 時に実行されます。
timezone_id String スケジュールのタイムゾーン (たとえば、 UTCAmerica/Los_Angeles)。
pause_status String スケジュールが一時停止されているかどうか。 有効な値: PAUSEDUNPAUSED

quality_monitor.snapshot 质量モニタースナップショット

Type: Map

スナップショット テーブルを監視するための構成。

クオリティモニター.タイムシリーズ

時系列テーブルを監視するための構成。

Key タイプ Description
granularities Sequence 時系列データを集計するための時間の粒度 (たとえば、 ["30 minutes"])。
timestamp_col String タイムスタンプを含む列の名前。

Examples

quality_monitorを定義するバンドルの完全な例については、mlops_demoバンドルを参照してください。

次の例では、 InferenceLogTimeSeries、および スナップショット プロファイルの種類の品質モニターを定義します。

# 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 カタログ 登録済みモデルの詳細については、「Unity Catalogでのモデルのライフサイクルの管理」を参照してください。

registered_models:
  <registered_model-name>:
    <registered_model-field-name>: <registered_model-field-value>
Key タイプ Description
aliases Sequence 登録済みモデルに関連付けられているエイリアスの一覧。 registered_model.aliases を参照してください。
browse_only ブール値 要求でinclude_browseが有効になっている場合に、プリンシパルが BROWSE 特権を使用して関連付けられたオブジェクトのメタデータを取得するように制限されているかどうかを示します。
catalog_name String スキーマと登録済みモデルが存在するカタログの名前。
comment String 登録済みモデルに添付されたコメント。
full_name String 登録済みモデルの 3 つのレベル (完全修飾) からなる名称
grants Sequence 登録済みモデルに関連付けられている助成金。 許可を参照してください。
lifecycle Map リソースのライフサイクル設定が含まれています。 デプロイまたは破棄されたときのリソースの動作を制御します。 ライフサイクルを参照してください。
name String 登録済みモデルの名前。
schema_name String 登録済みモデルが存在するスキーマの名前。
storage_location String モデル バージョンのデータ ファイルが格納されるクラウド上のストレージの場所。

registered_model.aliases

Type: Sequence

登録済みモデルに関連付けられているエイリアスの一覧。

リスト内の各項目は Aliasです。

Key タイプ Description
alias_name String エイリアスの名前 ("チャンピオン" や "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

スキーマは、Python for Databricks アセット バンドルでサポートされています。 databricks.bundles.schemas を参照してください。

スキーマ リソースの種類を使用すると、バンドルの一部として作成されたワークフローおよびパイプライン内のテーブルやその他の資産に Unity カタログ スキーマを定義できます。 他のリソースの種類とは異なるスキーマには、次の制限があります。

  • スキーマ リソースの所有者は常にデプロイ ユーザーであり、変更することはできません。 バンドルで run_as が指定されている場合、スキーマに対する操作では無視されます。
  • スキーマ リソースで使用できるのは、対応する Schemas オブジェクト作成 API でサポートされているフィールドのみです。 たとえば、enable_predictive_optimization は、更新 APIでのみ使用可能であるため、サポートされていません。
schemas:
  <schema-name>:
    <schema-field-name>: <schema-field-value>
Key タイプ Description
catalog_name String 親カタログの名前。
comment String ユーザーが指定した自由形式のテキストの説明。
grants Sequence スキーマに関連する助成金。 許可を参照してください。
lifecycle Map リソースのライフサイクル設定が含まれています。 デプロイまたは破棄されたときのリソースの動作を制御します。 ライフサイクルを参照してください。
name String 親カタログを基準とするスキーマの名前。
properties Map スキーマにアタッチされているキーと値のプロパティのマップ。
storage_root String スキーマ内のマネージド テーブルのストレージ ルート URL。

Examples

次の例では、ターゲットとして my_pipeline キーを持つ Unity カタログ スキーマを作成するリソース キー my_schema を含むパイプラインを定義します。

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 タイプ Description
backend_type String スコープが作成されるバックエンドの種類。 指定しない場合、既定値は DATABRICKS になります。
keyvault_metadata Map backend_typeAZURE_KEYVAULTされている場合のシークレット スコープのメタデータ。 keyvault_metadataを参照してください。
lifecycle Map リソースのライフサイクル設定が含まれています。 デプロイまたは破棄されたときのリソースの動作を制御します。 ライフサイクルを参照してください。
name String ユーザーによって要求されたスコープ名。 スコープ名は一意です。
permissions Sequence シークレット スコープに適用されるアクセス許可。 アクセス許可は、シークレット スコープ ACL を使用して管理されます。 「permissions」を参照してください。

secret_scope.keyvault_metadata

Type: Map

Azure Key Vault でサポートされるシークレット スコープのメタデータ。

Key タイプ 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

バンドル内から読み取るタスクでシークレット スコープとジョブを定義する方法を示すバンドルの例については、 バンドルの例の GitHub リポジトリを参照してください。

SQLデータウェアハウス(sql_warehouse)

Type: Map

SQL ウェアハウス リソースを使用すると、バンドル内の SQL ウェアハウス を定義できます。 SQL ウェアハウスの詳細については、「 Azure Databricks でのデータ ウェアハウス」を参照してください。

sql_warehouses:
  <sql-warehouse-name>:
    <sql-warehouse-field-name>: <sql-warehouse-field-value>
Key タイプ Description
auto_stop_mins Integer SQL ウェアハウスが自動的に停止されるまでにアイドル状態にする必要がある時間 (たとえば、RUNNING クエリなし) を分単位で指定します。 有効な値は 0 で、自動ストップがないことを示すか、10 以上であることを示します。 既定値は 120 です。
channel Map チャネルの詳細。 チャネルを表示 する
cluster_size String このウェアハウスに割り当てられたクラスターのサイズ。 Spark クラスターのサイズを大きくすると、それに対してより大きなクエリを実行できます。 同時実行クエリの数を増やす場合は、max_num_clustersを調整します。 サポートされている値については、 cluster_sizeを参照してください。
creator_name String 倉庫を作成したユーザーの名前。
enable_photon ブール値 ウェアハウスで Photon 最適化クラスターを使用する必要があるかどうか。 既定は false です。
enable_serverless_compute ブール値 ウェアハウスでサーバーレス コンピューティングを使用する必要があるかどうか。
instance_profile_arn String Deprecated. IAM ロールをクラスターに渡すために使用されるインスタンス プロファイル。
lifecycle Map リソースのライフサイクル設定が含まれています。 デプロイまたは破棄されたときのリソースの動作を制御します。 ライフサイクルを参照してください。
max_num_clusters Integer 同時実行クエリを処理するために自動スケーラーが作成するクラスターの最大数。 値は 30 以下で、 min_num_clusters以上である必要があります。 未設定の場合は、デフォルトでmin_clustersになります。
min_num_clusters Integer この SQL ウェアハウスで維持される使用可能なクラスターの最小数。 これを増やすと、より多くのクラスターが常に実行されるため、新しいクエリのコールド 開始時刻が短縮される可能性があります。 これは、リソース マネージャーの予約済みコアと取り消し可能なコアに似ています。 値は 0 より大きく、min(max_num_clusters, 30) 以下である必要があります。 デフォルト値は 1 です。
name String クラスターの論理名。 名前は組織内で一意で、100 文字未満である必要があります。
permissions Sequence 倉庫に適用する権限。 「permissions」を参照してください。
spot_instance_policy String スポット インスタンスを使用するかどうか。 有効な値は、 POLICY_UNSPECIFIEDCOST_OPTIMIZEDRELIABILITY_OPTIMIZEDです。 既定値は COST_OPTIMIZEDです。
tags Map この SQL ウェアハウスに関連付けられているすべてのリソース (AWS インスタンスや EBS ボリュームなど) にタグ付けされるキーと値のペアのセット。 タグの数は 45 未満にする必要があります。
warehouse_type String 倉庫の種類、 PRO 、または CLASSIC。 サーバーレス コンピューティングを使用する場合は、このフィールドを PRO に設定し、フィールド enable_serverless_computetrue に設定します。

sql_warehouse.チャネル

Type: Map

SQL ウェアハウスのチャネル構成。

Key タイプ Description
name String チャネルの名前。 有効な値には、 CHANNEL_NAME_CURRENTCHANNEL_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 タイプ 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 タイプ Description
create_database_objects_if_missing ブール値 同期されたテーブルの論理データベースとスキーマ リソースがまだ存在しない場合に作成するかどうか。
existing_pipeline_id String 既存のパイプラインの ID。 これが設定されている場合、同期されたテーブルは、参照されている既存のパイプラインにビンパックされます。 これにより、新しいパイプラインの作成が回避され、既存のコンピューティングを共有できるようになります。 この場合、この同期テーブルの scheduling_policy は、既存のパイプラインのスケジュール ポリシーと一致する必要があります。 最大 1 つの existing_pipeline_idnew_pipeline_spec を定義する必要があります。
new_pipeline_spec Map 新しいパイプラインの仕様。 new_pipeline_specを参照してください。 最大 1 つの existing_pipeline_idnew_pipeline_spec を定義する必要があります。
primary_key_columns Sequence 主キーを形成する列名の一覧。
scheduling_policy String スケジュールの同期ポリシー。 有効な値には、 SNAPSHOTCONTINUOUSが含まれます。
source_table_full_name String catalog.schema.table形式のソース テーブルの完全な名前。
timeseries_key String 同じ主キーを持つ行の重複を解除する時系列キー。

同期された_データベース_テーブル.仕様.new_pipeline_spec

Type: Map

同期されたデータベース テーブルによって使用される新しいパイプラインの仕様。

Key タイプ Description
budget_policy_id String 新しく作成されたパイプラインで設定する予算ポリシーの ID。
storage_catalog String チェックポイントやイベント ログなどの中間ファイルを格納するパイプラインのカタログ。 これは、ユーザーが Delta テーブルを作成するアクセス許可を持つ標準カタログである必要があります。
storage_schema String チェックポイントやイベント ログなどの中間ファイルを格納するパイプラインのスキーマ。 これは、ユーザーが Delta テーブルを作成するアクセス許可を持つ標準カタログに存在する必要があります。

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 Catalog)

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 タイプ 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 Catalog ボリューム内のファイルに書き込むジョブを実行するバンドルの例については、バンドルのサンプル GitHub リポジトリを参照してください。

一般的な物品

許可する

Type: Map

プリンシパルとそのプリンシパルに付与する特権を定義します。 許可の詳細については、「権限の表示、付与、取り消しを参照してください。

Key タイプ Description
principal String 特権が付与されるプリンシパルの名前。 ユーザー、グループ、またはサービス プリンシパルを指定できます。
privileges Sequence 指定したエンティティに付与する権限。 有効な値は、リソースの種類 ( SELECTMODIFYCREATEUSAGEREAD_FILESWRITE_FILESEXECUTEALL_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 タイプ Description
prevent_destroy ブール値 リソースが破棄されないようにするためのライフサイクル設定。