Partilhar via


Recursos do Databricks Asset Bundles

O Databricks Asset Bundles permite especificar informações sobre os recursos do Azure Databricks usados pelo pacote no mapeamento de resources na configuração do pacote. Consulte o mapeamento de recursos e a referência de chave de recursos.

Esta página fornece referência de configuração para todos os tipos de recursos suportados para pacotes e fornece detalhes e um exemplo para cada tipo suportado. Para obter exemplos adicionais, consulte Exemplos de configuração de Bundle.

O esquema JSON para pacotes que é usado para validar a configuração do YAML está no repositório GitHub da CLI do Databricks.

Tip

Para gerar YAML para qualquer recurso existente, use o comando databricks bundle generate. Consulte databricks bundle generate.

Recursos suportados

A tabela a seguir lista os tipos de recursos suportados para pacotes (YAML e Python, quando aplicável). Alguns recursos podem ser criados definindo-os em um pacote e implantando o pacote, e alguns recursos só podem ser criados fazendo referência a um ativo existente para incluir no pacote.

A configuração de recursos define um objeto Databricks que corresponde a um objeto da API REST do Databricks . Os campos de solicitação de criação suportados do objeto REST API, expressos como YAML, são as chaves suportadas do recurso. Os links para a documentação do objeto correspondente de cada recurso estão na tabela abaixo.

Tip

O comando databricks bundle validate retorna avisos se propriedades de recursos desconhecidas forem encontradas nos arquivos de configuração do pacote.

Resource Suporte a Python Objeto REST API correspondente
alerta Objeto de alerta
app Objeto de App
cluster Objeto de cluster
dashboard Objeto do painel
database_catalog Objeto de catálogo de banco de dados
database_instance Objeto de instância de banco de dados
experiment Objeto de experimento
job Empregos objeto de trabalho
modelo (legado) Objeto de modelo (legado)
model_serving_endpoint Modelo servindo objeto de ponto de extremidade
pipeline Pipelines Objeto de pipeline
quality_monitor Objeto do monitor de qualidade
registered_model (Catálogo Unity) Objeto de modelo registrado
esquema (Catálogo Unity) Esquemas Objeto de esquema
secret_scope Objeto de escopo secreto
sql_warehouse Objeto do SQL warehouse
tabela_base_de_dados_sincronizada Objeto de tabela de banco de dados sincronizado
volume (Catálogo Unity) Volumes Objeto de volume

alerta

Type: Map

O recurso de alerta define um alerta SQL (v2).

alerts:
  <alert-name>:
    <alert-field-name>: <alert-field-value>
Key Tipo Description
custom_description String Opcional. Descrição personalizada para o alerta. Suporta molde de bigode.
custom_summary String Opcional. Resumo personalizado do alerta. Suporta molde de bigode.
display_name String Required. O nome de exibição do alerta, por exemplo, Example alert.
evaluation Map Required. A configuração de avaliação do alerta. Ver alert.evaluation.
parent_path String Opcional. O caminho do espaço de trabalho da pasta que contém o alerta. Só pode ser definido na criação, e não pode ser atualizado. Exemplo: /Users/someone@example.com.
permissions Sequence As permissões de alerta. Consulte as permissões.
query_text String Required. Texto da consulta a ser executada, por exemplo, SELECT 1.
run_as Map Opcional. Especifica a identidade que será usada para executar o alerta. Este campo permite-lhe configurar alertas para serem executados por um utilizador específico ou um principal de serviço. Veja run_as.
  • Para a identidade do utilizador: Definir user_name para o email de um utilizador ativo do espaço de trabalho. Os utilizadores só podem definir isto para o seu próprio email.
  • Para o principal de serviço: defina service_principal_name como o ID da aplicação. Requer a função de Principal de Serviço/utilizador. Se não for especificado, o alerta será iniciado como o utilizador que fez o pedido.
schedule Map Required. A configuração do horário do alerta. Consulte alert.schedule.
warehouse_id String Required. ID do SQL warehouse associado ao alerta, por exemplo, a7066a8ef796be84.

alerta.avaliação

Type: Map

A configuração de avaliação do alerta.

Key Tipo Description
comparison_operator String O operador usado para comparação na avaliação do alerta.
empty_result_state String O estado de alerta caso o resultado seja vazio. Evite definir este campo como UNKNOWN porque UNKNOWN o estado está planeado para ser descontinuado.
notification Map O utilizador ou outro destinatário a ser notificado quando o alerta é acionado. Consulte alert.evaluation.notification.
source Map A coluna de origem do resultado a ser utilizada para avaliar o alerta. Consulte alert.evaluation.source.
threshold Map O limiar a usar para avaliação de alertas. Isto pode ser uma coluna ou um valor. Ver alert.evaluation.threshold.

alerta.avaliação.notificação

Type: Map

O utilizador ou outro destino para notificar quando o alerta é acionado.

Key Tipo Description
notify_on_ok booleano Opcional. Se deve notificar os subscritores quando o alerta voltar ao normal.
retrigger_seconds Integer Opcional. Número de segundos que um alerta espera após ser acionado antes de ser autorizado a enviar outra notificação. Se definido como 0 ou omitido, o alerta não enviará mais notificações após o primeiro disparo. Definir este valor como 1 permite que o alerta envie uma notificação em cada avaliação onde a condição é cumprida, efetivamente tornando o alerta sempre retomado para fins de notificação.
subscriptions Sequence Opcional. Lista não ordenada de subscrições de notificações. Consulte alert.evaluation.notification.subscriptions.
alerta.avaliação.notificação.subscrições

Type: Sequence

Uma lista não ordenada de subscrições de notificações.

Cada item da lista é um AlertSubscription:

Key Tipo Description
destination_id String O ID do destino da notificação.
user_email String O endereço de email do utilizador para notificar.

alerta.avaliação.origem

Type: Map

Coluna de origem do resultado para usar para avaliar o alerta.

Key Tipo Description
aggregation String O método de agregação a aplicar à coluna de origem. Os valores válidos são SUM, COUNT, COUNT_DISTINCT, AVGMEDIAN, MIN, MAX,STDDEV
display String O nome de exibição da coluna de origem.
name String O nome da coluna de origem do resultado da consulta.

alerta.avaliação.limite

Type: Map

O limiar a usar para avaliação de alertas pode ser uma coluna ou um valor.

Key Tipo Description
column Map Referência de coluna para usar como limiar. Consulte alert.evaluation.source.
value Map Valor literal para usar como limiar. Ver alert.evaluation.threshold.value.
alerta.avaliação.limiar.valor

Type: Map

Valor literal para usar como limiar. Especifique um dos seguintes tipos de valor.

Key Tipo Description
bool_value booleano Opcional. Valor booleano para o limiar, por exemplo, true.
double_value Double Opcional. Valor numérico para o limiar, por exemplo, 1.25.
string_value String Opcional. Valor de string para o limiar, por exemplo, test.

alert.schedule

Type: Map

A configuração do horário do alerta.

Key Tipo Description
pause_status String Opcional. Quer este horário esteja pausado ou não. Valores válidos: UNPAUSED, PAUSED. Padrão: UNPAUSED.
quartz_cron_schedule String Required. Uma expressão cron usando sintaxe quartz que especifica o cronograma para este pipeline. O formato de quartzo é descrito no formato de agendador de quartzo.
timezone_id String Required. Um ID de fuso horário em Java. O calendário será resolvido usando este fuso horário. Isto será combinado com o quartz_cron_schedule para determinar o calendário. Consulte SET TIME ZONE para obter detalhes.

Examples

A seguinte configuração de exemplo define um alerta com uma avaliação simples:

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

O seguinte exemplo de configuração define um alerta com permissões que avalia usando agregação e envia notificações:

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

aplicação

Type: Map

O recurso do aplicativo define um aplicativo Databricks. Para obter informações sobre aplicativos Databricks, consulte Aplicativos Databricks.

Para adicionar um aplicativo, especifique as configurações para definir o aplicativo, incluindo o necessário source_code_path.

Tip

Você pode inicializar um pacote com um aplicativo Streamlit Databricks usando o seguinte comando:

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 Tipo Description
budget_policy_id String O identificador da política de orçamento para o aplicativo.
compute_size String A dimensão de computação para a aplicação. Os valores válidos são MEDIUM ou LARGE dependem da configuração do espaço de trabalho.
config Map Deprecated. Em vez disso, defina os comandos de configuração do aplicativo e as variáveis de ambiente no app.yaml arquivo. Consulte Configurar um aplicativo Databricks.
description String A descrição do aplicativo.
lifecycle Map O comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
name String O nome do aplicativo. O nome deve conter apenas caracteres alfanuméricos minúsculos e hífenes. Ele deve ser exclusivo dentro do espaço de trabalho.
permissions Sequence As permissões do aplicativo. Consulte as permissões.
resources Sequence Os recursos de computação do aplicativo. Consulte app.resources.
source_code_path String O ./app caminho local do código-fonte do aplicativo Databricks.
user_api_scopes Sequence Os escopos da API do usuário.

app.recursos

Type: Sequence

Uma lista de recursos de computação para a aplicação.

Cada item da lista é um AppResource:

Key Tipo Description
description String A descrição do recurso do aplicativo.
database Map As configurações que identificam o banco de dados Lakebase a ser usado. Consulte app.resources.database.
genie_space Map As configurações que identificam o espaço do Genie a ser usado. Veja app.resources.genie_space.
job Map As configurações que identificam o recurso de trabalho a ser usado. Consulte app.resources.job.
name String O nome do recurso do aplicativo.
secret Map As configurações que identificam o recurso secreto do Azure Databricks a ser usado. Consulte app.resources.secret.
serving_endpoint Map As configurações que identificam o modelo que serve o recurso de ponto de extremidade a ser usado. Ver app.resources.serving_endpoint.
sql_warehouse Map As configurações que identificam o recurso do SQL warehouse a ser usado. Consulte app.resources.sql_warehouse.
uc_securable Map As configurações que identificam o volume do Catálogo Unity a ser usado. Ver app.resources.uc_securable.

app.resources.base de dados

Type: Map

As configurações que identificam o banco de dados Lakebase a ser usado.

Key Tipo Description
database_name String O nome do banco de dados.
instance_name String O nome da instância da base de dados.
permission String O nível de permissão para o banco de dados. Os valores válidos são CAN_CONNECT_AND_CREATE.

app.resources.genie_space

Type: Map

As configurações que identificam o espaço do Genie a ser usado.

Key Tipo Description
name String O nome do espaço Genie.
permission String O nível de permissão para o espaço. Os valores válidos incluem CAN_VIEW, CAN_EDIT, CAN_MANAGE, CAN_RUN.
space_id String O ID do espaço Genie, por exemplo 550e8400-e29b-41d4-a716-999955440000.

app.resources.job

Type: Map

As configurações que identificam o recurso de trabalho a ser usado.

Key Tipo Description
id String A ID do trabalho.
permission String O nível de permissão para a tarefa. Os valores válidos incluem CAN_VIEW, CAN_MANAGE_RUN, CAN_MANAGE, IS_OWNER.

app.recursos.segredo

Type: Map

As configurações que identificam o recurso secreto do Azure Databricks a ser usado.

Key Tipo Description
key String A chave do segredo para conceder permissão.
permission String O nível de permissão para o segredo. Os valores válidos incluem READ, WRITE, MANAGE.
scope String O nome do escopo secreto.

app.resources.endpoint_de_serviço

Type: Map

As configurações que identificam o modelo que serve o recurso de ponto de extremidade a ser usado.

Key Tipo Description
name String O nome do endpoint de serviço.
permission String O nível de permissão para o endpoint de serviço. Os valores válidos incluem CAN_QUERY, CAN_MANAGE, CAN_VIEW.

app.resources.sql_armazém_de_dados

Type: Map

As configurações que identificam o SQL warehouse a ser usado.

Key Tipo Description
id String O ID do armazém SQL.
permission String O nível de permissão para o SQL warehouse. Os valores válidos incluem CAN_USE, CAN_MANAGE, IS_OWNER.

app.resources.uc_securable

Type: Map

As configurações que identificam o volume do Catálogo Unity a ser usado.

Key Tipo Description
permission String O nível de permissão para a entidade securável no Unity Catalog. Os valores válidos são READ_VOLUME e WRITE_VOLUME.
securable_full_name String O nome completo do objeto securizável do Unity Catalog no formato catalog.schema.volume.
securable_type String O tipo de segurança do Unity Catalog. Os valores válidos são VOLUME.

Example

O exemplo a seguir cria um aplicativo chamado my_app que gerencia um trabalho criado pelo pacote:

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'

O correspondente app.yaml define a configuração para executar o aplicativo:

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

Para obter o pacote de exemplo completo do aplicativo Databricks, consulte o repositório GitHub de exemplos de pacotes .

aglomerado

Type: Map

O recurso de cluster define um cluster.

clusters:
  <cluster-name>:
    <cluster-field-name>: <cluster-field-value>
Key Tipo Description
apply_policy_default_values booleano Quando definido como true, os valores fixos e padrão da política serão usados para campos omitidos. Quando definido como false, apenas os valores fixos da política serão aplicados.
autoscale Map Parâmetros necessários para dimensionar automaticamente clusters para cima e para baixo com base na carga. Consulte autoscale.
autotermination_minutes Integer Encerra automaticamente o cluster depois que ele fica inativo por esse tempo em minutos. Se não estiver definido, este cluster não será encerrado automaticamente. Se especificado, o limite deve estar entre 10 e 10000 minutos. Os usuários também podem definir esse valor como 0 para desabilitar explicitamente a terminação automática.
aws_attributes Map Atributos relacionados a clusters em execução na Amazon Web Services. Se não for especificado na criação do cluster, um conjunto de valores padrão será usado. Ver aws_attributes.
azure_attributes Map Atributos relacionados a clusters em execução no Microsoft Azure. Se não for especificado na criação do cluster, um conjunto de valores padrão será usado. Ver azure_attributes.
cluster_log_conf Map A configuração para entregar logs do Spark para um destino de armazenamento a longo prazo. Ver cluster_log_conf.
cluster_name String Nome do cluster solicitado pelo usuário. Isso não precisa ser único. Se não for especificado na criação, o nome do cluster será uma cadeia de caracteres vazia.
custom_tags Map Tags adicionais para recursos de cluster. O Databricks marcará todos os recursos do cluster (por exemplo, instâncias da AWS e volumes do EBS) com essas tags, além do default_tags.
data_security_mode String O modelo de governança de dados a ser usado ao acessar dados de um cluster. Os valores válidos incluem NONE, SINGLE_USER, USER_ISOLATION, , LEGACY_SINGLE_USERLEGACY_TABLE_ACL, LEGACY_PASSTHROUGH.
docker_image Map A imagem personalizada do docker. Ver docker_image.
driver_instance_pool_id String O ID opcional do pool de instâncias ao qual pertence o driver do cluster. O cluster de pool usa o pool de instâncias com id (instance_pool_id) se o pool de drivers não estiver atribuído.
driver_node_type_id String O tipo de nó do driver do Spark. Note que este campo é opcional; se não for definido, o tipo de nó do controlador será atribuído o mesmo valor node_type_id definido acima. Este campo, juntamente com node_type_id, não deve ser definido se virtual_cluster_size estiver definido. Se ambos os driver_node_type_id, node_type_id e virtual_cluster_size forem especificados, driver_node_type_id e node_type_id terão precedência.
enable_elastic_disk booleano Dimensionamento automático do Armazenamento Local: quando ativado, esse cluster adquirirá dinamicamente espaço em disco adicional quando seus trabalhadores do Spark estiverem com pouco espaço em disco. Esse recurso requer permissões específicas da AWS para funcionar corretamente - consulte o Guia do usuário para obter mais detalhes.
enable_local_disk_encryption booleano Se o LUKS deve ser habilitado nos discos locais das VMs de cluster
gcp_attributes Map Atributos relacionados a clusters em execução no Google Cloud Platform. Se não for especificado na criação do cluster, um conjunto de valores padrão será usado. Ver gcp_attributes.
init_scripts Sequence A configuração para armazenar scripts de inicialização. Qualquer número de destinos pode ser especificado. Os scripts são executados sequencialmente na ordem fornecida. Ver init_scripts.
instance_pool_id String A ID opcional do pool de instâncias ao qual o cluster pertence.
is_single_node booleano Este campo só pode ser utilizado quando kind = CLASSIC_PREVIEW. Quando definido como true, o Databricks definirá automaticamente as configurações de um único nó relacionadas custom_tags, spark_conf e num_workers
kind String O tipo de computação descrito por esta especificação de computação.
node_type_id String Este campo codifica, através de um único valor, os recursos disponíveis para cada um dos nós do Spark neste cluster. Por exemplo, os nós do Spark podem ser provisionados e otimizados para cargas de trabalho intensivas de memória ou computação. Uma lista de tipos de nó disponíveis pode ser obtida através da chamada à API :method:clusters/listNodeTypes.
num_workers Integer Número de nós de trabalho que este cluster deve possuir. Um cluster tem um Spark Driver e num_workers executores, perfazendo um total de num_workers + 1 nós Spark.
permissions Sequence As permissões de cluster. Consulte as permissões.
policy_id String A ID da política de cluster usada para criar o cluster, se aplicável.
runtime_engine String Determina o mecanismo de tempo de execução do cluster, ou STANDARD ou PHOTON.
single_user_name String Nome de usuário único se for data_security_mode SINGLE_USER
spark_conf Map Um objeto que contém um conjunto de pares opcionais de chave-valor de configuração do Spark especificados pelo usuário. Os usuários também podem passar uma sequência de opções JVM extras para o driver e os executores via spark.driver.extraJavaOptions e spark.executor.extraJavaOptions respectivamente.
spark_env_vars Map Um objeto que contém um conjunto de pares de chave-valor de variáveis de ambiente opcionais especificadas pelo utilizador.
spark_version String A versão Spark do cluster, por exemplo, 3.3.x-scala2.11. Uma lista de versões disponíveis do Spark pode ser recuperada usando a chamada da API :method:clusters/sparkVersions.
ssh_public_keys Sequence Conteúdo de chave pública SSH que será adicionado a cada nó do Spark neste cluster. As chaves privadas correspondentes podem ser usadas para fazer login com o nome ubuntu de usuário na porta 2200. Até 10 chaves podem ser especificadas.
use_ml_runtime booleano Este campo só pode ser utilizado quando kind = CLASSIC_PREVIEW. effective_spark_version é determinado por spark_version (DBR release), este campo é use_ml_runtime, e se node_type_id é nó GPU ou não.
workload_type Map Atributos de cluster apresentados para tipos de carga de trabalho de clusters. Ver workload_type.

cluster.autoscale

Type: Map

Parâmetros para dimensionar automaticamente clusters para cima e para baixo com base na carga.

Key Tipo Description
min_workers Integer O número mínimo de trabalhadores para o qual o cluster pode ser reduzido quando subutilizado. É também o número inicial de trabalhadores que o cluster terá após a criação.
max_workers Integer O número máximo de trabalhadores para o qual o cluster pode ser dimensionado quando sobrecarregado. max_workers deve ser estritamente maior que min_workers.

cluster.aws_attributes

Type: Map

Atributos relacionados a clusters em execução na Amazon Web Services.

Key Tipo Description
zone_id String Identificador da zona de disponibilidade/datacenter em que o cluster reside. Esta cadeia de caracteres terá uma forma como us-west-2a.
availability String Tipo de disponibilidade usado para todos os nós posteriores aos first_on_demand acima mencionados. Os valores válidos são SPOT, ON_DEMAND, SPOT_WITH_FALLBACK.
spot_bid_price_percent Integer O preço máximo para instâncias spot da AWS, como uma porcentagem do preço sob demanda do tipo de instância correspondente.
instance_profile_arn String Os nós desse cluster só serão colocados em instâncias da AWS com esse perfil de instância.
first_on_demand Integer Os primeiros first_on_demand nós do cluster serão colocados em instâncias sob demanda. Esse valor deve ser maior que 0, para garantir que o nó de driver do cluster seja colocado numa instância on-demand.
ebs_volume_type String O tipo de volumes do EBS que serão lançados com esse cluster. Os valores válidos são GENERAL_PURPOSE_SSD ou THROUGHPUT_OPTIMIZED_HDD.
ebs_volume_count Integer O número de volumes lançados para cada instância.
ebs_volume_size Integer O tamanho de cada volume do EBS (em GiB) lançado para cada instância.
ebs_volume_iops Integer O número de IOPS de cada volume gp3 do EBS.
ebs_volume_throughput Integer A taxa de transferência por volume gp3 do EBS, em MiB por segundo.

cluster.azure_attributes

Type: Map

Atributos relacionados a clusters em execução no Microsoft Azure.

Key Tipo Description
first_on_demand Integer Os primeiros first_on_demand nós do cluster serão colocados em instâncias sob demanda.
availability String Tipo de disponibilidade usado para todos os nós posteriores aos first_on_demand acima mencionados. Os valores válidos são SPOT_AZURE, ON_DEMAND_AZURE, SPOT_WITH_FALLBACK_AZURE.
spot_bid_max_price Número O preço máximo para Azure Spot Instances. Use -1 para especificar o preço mais baixo.

cluster.gcp_atributos

Type: Map

Atributos relacionados a clusters em execução no Google Cloud Platform.

Key Tipo Description
use_preemptible_executors booleano Se deve ou não usar executores preemptíveis. Os executores preemptíveis são instâncias GCE preemptíveis que podem ser recuperadas pela GCE a qualquer momento.
google_service_account String A conta de serviço do Google a ser usada pelas instâncias de VM do cluster Databricks.
local_ssd_count Integer O número de SSDs locais a serem anexados a cada nó do cluster. O valor predefinido é 0.
zone_id String Identificador da zona de disponibilidade/datacenter em que o cluster reside.
availability String Tipo de disponibilidade usado para todos os nós. Os valores válidos são PREEMPTIBLE_GCP, ON_DEMAND_GCP, PREEMPTIBLE_WITH_FALLBACK_GCP.
boot_disk_size Integer O tamanho do disco de inicialização em GB. Os valores normalmente variam de 100 a 1000.

cluster.cluster_log_conf (configuração de log do cluster)

A configuração para entregar logs do Spark a um destino de armazenamento de longo prazo.

Key Tipo Description
dbfs Map Local do DBFS para entrega de log de cluster. Consulte dbfs.
s3 Map Localização S3 para entrega de logs do cluster. Ver s3.
volumes Map Local dos volumes para entrega de log de cluster. Ver volumes.

cluster.cluster_log_conf.dbfs

Type: Map

Local do DBFS para entrega de log de cluster.

Key Tipo Description
destination String O caminho do DBFS para a entrega de logs de cluster (por exemplo, dbfs:/cluster-logs).

cluster.cluster_log_conf.s3

Type: Map

Localização S3 para entrega de logs do cluster.

Key Tipo Description
destination String O URI do S3 para a entrega de logs do cluster (por exemplo, s3://my-bucket/cluster-logs).
region String A região AWS do bucket S3.
endpoint String A URL de endpoint S3 (opcional).
enable_encryption booleano Se a criptografia para logs de cluster deve ser habilitada.
encryption_type String O tipo de encriptação. Os valores válidos incluem SSE_S3, SSE_KMS.
kms_key String O ARN da chave KMS para criptografia (ao utilizar SSE_KMS).
canned_acl String A ACL predefinida a ser aplicada aos registos de cluster.

cluster.cluster_log_conf.volumes

Type: Map

Local dos volumes para entrega de log de cluster.

Key Tipo Description
destination String O caminho do volume para distribuição dos logs do cluster (por exemplo, /Volumes/catalog/schema/volume/cluster_log).

cluster.docker_image

Type: Map

A configuração de imagem personalizada do Docker.

Key Tipo Description
url String URL da imagem do Docker.
basic_auth Map Autenticação básica para repositório do Docker. Ver basic_auth.

cluster.docker_image.basic_auth (autenticação básica do Docker)

Type: Map

Autenticação básica para repositório do Docker.

Key Tipo Description
username String O nome de usuário para autenticação do registro do Docker.
password String A senha para autenticação do registro do Docker.

cluster.init_scripts

Type: Map

A configuração para armazenar scripts de inicialização. Pelo menos um tipo de local deve ser especificado.

Key Tipo Description
dbfs Map Localização DBFS do script de inicialização. Consulte dbfs.
workspace Map Localização do espaço de trabalho do script init. Veja o espaço de trabalho.
s3 Map Localização S3 do script de inicialização. Ver s3.
abfss Map Localização do script de init ABFSS. Ver abfss.
gcs Map Localização GCS do script de inicialização. Ver gcs.
volumes Map Localização do script de inicialização dos volumes UC. Ver volumes.

cluster.init_scripts.dbfs

Type: Map

Localização DBFS do script de inicialização.

Key Tipo Description
destination String O caminho do script de inicialização no DBFS.

cluster.init_scripts.workspace (ambiente de inicialização de scripts)

Type: Map

Localização do espaço de trabalho do script init.

Key Tipo Description
destination String O caminho do espaço de trabalho do script init.

cluster.init_scripts.s3

Type: Map

Localização S3 do script de inicialização.

Key Tipo Description
destination String O URI S3 do script de inicialização.
region String A região AWS do bucket S3.
endpoint String A URL de endpoint S3 (opcional).

cluster.init_scripts.abfss

Type: Map

Localização do script de init ABFSS.

Key Tipo Description
destination String O caminho ABFSS do script init.

cluster.init_scripts.gcs

Type: Map

Localização GCS do script de inicialização.

Key Tipo Description
destination String Caminho GCS do script de inicialização.

cluster.init_scripts.volumes

Type: Map

Localização dos volumes dos scripts de inicialização.

Key Tipo Description
destination String O caminho dos Volumes UC do script de inicialização.

cluster.workload_type

Type: Map

Atributos de cluster que apresentam os tipos de carga de trabalho.

Key Tipo Description
clients Map Define que tipo de clientes podem usar o cluster. Veja os clientes.

cluster.workload_type.clientes

Type: Map

O tipo de clientes para essa carga de trabalho de computação.

Key Tipo Description
jobs booleano Se o cluster pode executar trabalhos.
notebooks booleano Se o cluster pode executar blocos de anotações.

Examples

O exemplo a seguir cria um cluster dedicado (usuário único) para o usuário atual com o Databricks Runtime 15.4 LTS e uma política de cluster:

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

Este exemplo cria um cluster my_cluster simples e o define como o cluster a ser usado para executar o bloco de anotações em 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}

painel

Type: Map

O recurso de painel permite que você gerencie painéis de IA/BI em um pacote. Para obter informações sobre painéis de IA/BI, consulte Painéis.

Se você implantou um pacote que contém um painel do seu ambiente local e, em seguida, usa a interface do usuário para modificar esse painel, as modificações feitas por meio da interface do usuário não são aplicadas ao arquivo JSON do painel no pacote local, a menos que você o atualize explicitamente usando bundle generate. Você pode usar a opção --watch para pesquisar continuamente e recuperar alterações no painel. Consulte databricks bundle generate.

Além disso, se você tentar implantar um pacote de seu ambiente local que contenha um arquivo JSON de painel diferente daquele no espaço de trabalho remoto, ocorrerá um erro. Para forçar a implantação e substituir o dashboard no espaço de trabalho remoto pelo painel local, use a opção --force. Consulte databricks bundle deploy.

Note

Ao usar o Databricks Asset Bundles com suporte do Git para dashboards, evite a geração de dashboards duplicados adicionando o mapeamento de sincronização para excluir os dashboards da sincronização como ficheiros:

sync:
  exclude:
    - src/*.lvdash.json
dashboards:
  <dashboard-name>:
    <dashboard-field-name>: <dashboard-field-value>
Key Tipo Description
display_name String O nome de exibição do painel.
embed_credentials booleano Se as credenciais de identidade de implantação do pacote são usadas para executar consultas para todos os visualizadores de painel. Se estiver definido como false, as credenciais de um visualizador serão usadas. O valor predefinido é false.
etag String O etag para o painel. Pode ser fornecido opcionalmente em atualizações para garantir que o painel não tenha sido modificado desde a última leitura.
file_path String O caminho local do ativo do painel, incluindo o nome do arquivo. Os painéis exportados sempre têm a extensão de arquivo .lvdash.json.
permissions Sequence As permissões do painel. Consulte as permissões.
serialized_dashboard Any O conteúdo do painel em forma de cadeia de caracteres serializada.
warehouse_id String O ID do armazém usado para executar o painel de controlo.

Example

O exemplo a seguir inclui e implanta o painel de exemplo NYC Taxi Trip Analysis no espaço de trabalho 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}

catálogo_da_base_de_dados

Type: Map

O recurso de catálogo de banco de dados permite definir catálogos de banco de dados que correspondem a instâncias de banco de dados em um pacote. Um catálogo de banco de dados é um banco de dados Lakebase registrado como um catálogo Unity Catalog.

Para obter informações sobre catálogos de banco de dados, consulte Criar um catálogo.

database_catalogs:
  <database_catalog-name>:
    <database_catalog-field-name>: <database_catalog-field-value>
Key Tipo Description
create_database_if_not_exists booleano Se o banco de dados deve ser criado se ele não existir.
database_instance_name String O nome da instância que hospeda o banco de dados.
database_name String O nome do banco de dados (em uma instância) associado ao catálogo.
lifecycle Map Contém as configurações de ciclo de vida de um recurso, incluindo o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
name String O nome do catálogo no Unity Catalog.

Example

O exemplo a seguir define uma instância de banco de dados com um catálogo de banco de dados correspondente:

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

instância_de_base_de_dados

Type: Map

O recurso de instância de banco de dados permite definir instâncias de banco de dados em um pacote. Uma instância de banco de dados Lakebase gerencia recursos de armazenamento e computação e fornece os pontos de extremidade aos quais os usuários se conectam.

Importante

Quando você implanta um pacote com uma instância de banco de dados, a instância começa a ser executada imediatamente e está sujeita a preços. Veja os preços do Lakebase.

Para obter informações sobre instâncias de banco de dados, consulte O que é uma instância de banco de dados?.

database_instances:
  <database_instance-name>:
    <database_instance-field-name>: <database_instance-field-value>
Key Tipo Description
capacity String O sku da instância. Os valores válidos são CU_1, CU_2, CU_4, CU_8.
custom_tags Sequence Uma lista de pares chave-valor que especifica etiquetas personalizadas associadas à instância.
enable_pg_native_login booleano Se a instância tem login de senha nativa PG habilitado. O padrão é true.
enable_readable_secondaries booleano Se os secundários devem servir tráfego somente leitura. O padrão é false.
lifecycle Map Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
name String O nome da instância. Este é o identificador exclusivo para a instância.
node_count Integer O número de nós na instância, composto por 1 primário e 0 ou mais secundários. O padrão é 1 primário e 0 secundário.
parent_instance_ref Map A referência da instância pai. Isso só estará disponível se a instância for filha. Consulte a instância pai.
permissions Sequence As permissões da instância do banco de dados. Consulte as permissões.
retention_window_in_days Integer A janela de retenção para a instância. Esta é a janela de tempo em dias para a qual os dados históricos são retidos. O valor padrão é 7 dias. Os valores válidos são de 2 a 35 dias.
stopped booleano Se a instância está parada.
usage_policy_id String A política de uso desejada a ser associada à instância.

database_instance.parent_instance_ref

Type: Map

A referência da instância pai. Isso só estará disponível se a instância for filha.

Key Tipo Description
branch_time String Tempo de ramificação da instância do banco de dados ref. Para uma instância de referência pai, este é o ponto no tempo na instância pai a partir da qual a instância foi criada. Para uma instância de referência filho, este é o ponto no tempo na instância a partir do qual a instância filho foi criada.
lsn String LSN do WAL especificado pelo utilizador da instância de base de dados de referência.
name String Nome da instância do banco de dados ref.

Example

O exemplo a seguir define uma instância de banco de dados com um catálogo de banco de dados correspondente:

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

Para obter um exemplo de pacote que demonstra como definir uma instância de banco de dados e o catálogo de banco de dados correspondente, consulte o repositório GitHub de exemplos de pacote.

experimento

Type: Map

O recurso de experimento permite definir experimentos MLflow em um pacote. Para obter informações sobre experimentos MLflow, consulte Organizar execuções de treinamento com experimentos MLflow.

experiments:
  <experiment-name>:
    <experiment-field-name>: <experiment-field-value>
Key Tipo Description
artifact_location String O local onde os artefatos para o experimento são armazenados.
lifecycle Map Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
name String O nome amigável que identifica o experimento. Um nome de experimento deve ser um caminho absoluto no espaço de trabalho Databricks, por exemplo /Workspace/Users/someone@example.com/my_experiment.
permissions Sequence As permissões do experimento. Consulte as permissões.
tags Sequence Pares chave-valor de metadados adicionais. Veja tags.

Example

O exemplo a seguir define um experimento que todos os usuários podem exibir:

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

trabalho

Type: Map

As tarefas são suportadas em Python para "Databricks Asset Bundles". Ver databricks.bundles.jobs.

O recurso de trabalho permite que você defina trabalhos e suas tarefas correspondentes em seu pacote.

Para obter informações sobre trabalhos, consulte Lakeflow Jobs. Para obter um tutorial que usa um modelo Databricks Asset Bundles para criar um trabalho, consulte Desenvolver um trabalho com Databricks Asset Bundles.

jobs:
  <job-name>:
    <job-field-name>: <job-field-value>
Key Tipo Description
budget_policy_id String A id da política de orçamento especificada pelo usuário a ser usada para este trabalho. Se não for especificado, uma política de orçamento padrão pode ser aplicada ao criar ou modificar o trabalho. Consulte effective_budget_policy_id para a política de orçamento usada por esta carga de trabalho.
continuous Map Uma propriedade contínua opcional para este trabalho. A propriedade continuous garantirá que haja sempre uma execução executada. Apenas um de schedule e continuous pode ser usado. Ver contínuo.
deployment Map Informações de implantação para trabalhos gerenciados por fontes externas. Consulte a implantação.
description String Uma descrição opcional para o cargo. O comprimento máximo é de 27700 caracteres na codificação UTF-8.
edit_mode String Modo de edição do trabalho, ou UI_LOCKED ou EDITABLE.
email_notifications Map Um conjunto opcional de endereços de e-mail que é notificado quando as operações desta tarefa começam ou são concluídas, bem como quando esta tarefa é eliminada. Ver email_notifications.
environments Sequence Uma lista de especificações do ambiente em que as tarefas podem ser executadas, que podem ser referenciadas pelas tarefas sem servidor deste trabalho. É necessário que um ambiente esteja presente para tarefas sem servidor. Para tarefas de notebook sem servidor, o ambiente é acessível no painel de ambiente do notebook. Para outras tarefas sem servidor, o ambiente de tarefas deve ser especificado usando environment_key nas configurações da tarefa. Veja ambientes.
format String Deprecated. O formato do trabalho.
git_source Map Uma especificação opcional para um repositório Git remoto contendo o código-fonte usado pelas tarefas. Veja job.git_source.
Importante: O git_source campo e o campo de tarefa source definidos como GIT não são recomendados para pacotes, porque os caminhos relativos locais podem não apontar para o mesmo conteúdo no repositório Git, e os pacotes esperam que um trabalho implantado tenha o mesmo conteúdo que a cópia local de onde foi implantado.
Em vez disso, clone o repositório localmente e configure seu projeto de pacote dentro desse repositório, para que a origem das tarefas seja o espaço de trabalho.
health Map Um conjunto opcional de regras de integridade que pode ser definido para este trabalho. Consulte saúde.
job_clusters Sequence Uma lista de especificações de cluster de trabalho que podem ser compartilhadas e reutilizadas entre tarefas deste trabalho. Vê job_clusters.
max_concurrent_runs Integer Um número máximo opcional permitido de execuções simultâneas do trabalho. Defina esse valor se quiser ser capaz de executar várias execuções do mesmo trabalho simultaneamente.
name String Um nome opcional para o trabalho. O comprimento máximo é de 4096 bytes na codificação UTF-8.
notification_settings Map Configurações de notificação opcionais que são usadas ao enviar notificações para cada um dos email_notifications e webhook_notifications para este trabalho. Ver notification_settings.
parameters Sequence Definições de parâmetros no nível do trabalho.
performance_target String Define como deve ser a eficiência de desempenho ou custo na execução em um ambiente serverless.
permissions Sequence As permissões do trabalho. Consulte as permissões.
queue Map As configurações de fila do trabalho. Veja a fila.
run_as Map Configuração somente gravação. Especifica o usuário ou a entidade de serviço com a qual o trabalho é executado. Se não for especificado, o trabalho será executado como o usuário que o criou. Ou user_name ou service_principal_name deve ser especificado. Se não, ocorre um erro. Veja run_as.
schedule Map Um cronograma periódico opcional para este trabalho. O comportamento padrão é que o trabalho só é executado quando acionado clicando em "Executar agora" na interface do usuário de trabalhos ou enviando uma solicitação de API para .runNow Veja a programação.
tags Map Um mapa de tags associadas ao trabalho. Elas são encaminhadas para o cluster como marcas de cluster para clusters de trabalhos e estão sujeitas às mesmas limitações que as tags de cluster. Um máximo de 25 tags podem ser adicionadas ao trabalho.
tasks Sequence Uma lista de especificações de tarefas a serem executadas por este trabalho. Consulte Adicionar tarefas a trabalhos no Databricks Asset Bundles.
timeout_seconds Integer Um tempo limite opcional aplicado a cada execução desta tarefa. Um valor de 0 significa que não há tempo limite.
trigger Map Uma configuração para disparar uma execução quando determinadas condições são atendidas. Veja gatilho.
webhook_notifications Map Uma coleção de IDs de notificação do sistema para notificar quando as execuções desse trabalho começarem ou forem concluídas. Ver webhook_notifications.

job.contínuo

Type: Map

Configuração para execução contínua de tarefas.

Key Tipo Description
pause_status String Se o trabalho contínuo está pausado ou não. Valores válidos: PAUSED, UNPAUSED.
task_retry_mode String Indique como o trabalho contínuo está a aplicar retries ao nível da tarefa. Os valores válidos são NEVER e ON_FAILURE. O padrão é NEVER.

Tarefa.Implementação

Type: Map

Informações de implantação para trabalhos gerenciados por fontes externas.

Key Tipo Description
kind String O tipo de implantação. Por exemplo, BUNDLE.
metadata_file_path String O caminho para o arquivo de metadados para a implantação.

job.notificações_de_email

Type: Map

Configurações de notificação por e-mail para execuções de tarefas.

Key Tipo Description
on_start Sequence Uma lista de endereços de e-mail para notificar quando uma execução é iniciada.
on_success Sequence Uma lista de endereços de e-mail para notificar quando uma execução for bem-sucedida.
on_failure Sequence Uma lista de endereços de e-mail para notificar quando uma execução falhar.
on_duration_warning_threshold_exceeded Sequence Uma lista de endereços de e-mail para notificar quando a duração de uma execução exceder o limite de aviso.
no_alert_for_skipped_runs booleano Se deve omitir o envio de alertas para execuções ignoradas.

emprego.ambientes

Type: Sequence

Uma lista de especificações do ambiente de execução de tarefas que podem ser referenciadas por tarefas sem servidor de uma tarefa.

Cada item da lista é um JobEnvironment:

Key Tipo Description
environment_key String A chave de um ambiente. Tem de ser único dentro de um trabalho.
spec Map A entidade que representa um ambiente "serverless". Veja job.environments.spec.

tarefa.ambientes.especificação

Type: Map

A entidade que representa um ambiente "serverless".

Key Tipo Description
client String Deprecated. A versão para o cliente.
dependencies Sequence Lista de dependências de pip, conforme suportado pela versão de pip neste ambiente.
environment_version String Required. Versão do ambiente usada pelo ambiente. Cada versão vem com uma versão específica do Python e um conjunto de pacotes Python. A versão é uma cadeia de caracteres, consistindo de um inteiro.

job.git_source

Type: Map

Configuração do repositório Git para o código-fonte do trabalho.

Key Tipo Description
git_branch String O nome do ramo a ser verificado e utilizado por esta tarefa. Este campo não pode ser especificado em conjunto com git_tag ou git_commit.
git_commit String Comprometa-se a fazer check-out e ser usado por este trabalho. Este campo não pode ser especificado em conjunto com git_branch ou git_tag.
git_provider String Identificador único do serviço utilizado para alojar o repositório Git. O valor não diferencia maiúsculas de minúsculas. Os valores válidos são gitHub, bitbucketCloud, gitLab, azureDevOpsServices, gitHubEnterprise, bitbucketServer, . gitLabEnterpriseEdition
git_snapshot Map Estado de apenas leitura do repositório remoto no momento em que o trabalho foi executado. Este campo é incluído apenas em execuções de trabalho. Ver git_snapshot.
git_tag String Nome da tag a ser verificada e usada por este trabalho. Este campo não pode ser especificado em conjunto com git_branch ou git_commit.
git_url String URL do repositório a ser clonado por este trabalho.

job.git_source.git_snapshot

Type: Map

Instantâneo de informações de commit em modo somente leitura.

Key Tipo Description
used_commit String Commit que foi usado para executar a execução. Se git_branch foi especificado, aponta para o HEAD do branch no momento da execução; se git_tag foi especificado, aponta para o commit ao qual a tag se refere.

emprego.saúde

Type: Map

Configuração de monitoramento de saúde para a tarefa.

Key Tipo Description
rules Sequence Uma lista de regras de saúde do trabalho. Cada regra contém um metric, um op (operador), e um value. Consulte job.health.rules.

tarefa.saúde.normas

Type: Sequence

Uma lista de regras de saúde do trabalho.

Cada item da lista é um JobHealthRule:

Key Tipo Description
metric String Especifica a métrica de saúde que está a ser avaliada para uma regra de saúde específica.
  • RUN_DURATION_SECONDS: Tempo total esperado para uma corrida em segundos.
  • STREAMING_BACKLOG_BYTES: Uma estimativa do máximo de bytes de dados aguardando para serem consumidos em todos os fluxos. Essa métrica está em Visualização pública.
  • STREAMING_BACKLOG_RECORDS: Uma estimativa do atraso máximo de deslocamento em todos os fluxos. Essa métrica está em Visualização pública.
  • STREAMING_BACKLOG_SECONDS: Uma estimativa do atraso máximo do consumidor em todos os fluxos. Essa métrica está em Visualização pública.
  • STREAMING_BACKLOG_FILES: Uma estimativa do número máximo de arquivos pendentes em todos os fluxos. Essa métrica está em Visualização pública.
op String Especifica o operador usado para comparar o valor da métrica de integridade com o limite especificado.
value Integer Especifica o valor limite que a métrica de integridade deve obedecer para satisfazer a regra de integridade.

job.job_clusters

Type: Sequence

Uma lista de especificações de cluster de trabalho que podem ser compartilhadas e reutilizadas entre tarefas deste trabalho. As bibliotecas não podem ser declaradas em um cluster de trabalho compartilhado. Você deve declarar bibliotecas dependentes nas configurações de tarefas.

Cada item da lista é um JobCluster:

Key Tipo Description
job_cluster_key String Um nome exclusivo para o cluster de trabalhos. Este campo é obrigatório e deve ser exclusivo dentro do trabalho. JobTaskSettings pode consultar este campo para determinar qual cluster lançar para a execução da tarefa.
new_cluster Map Se new_cluster, uma descrição de um cluster criado para cada tarefa. Consulte cluster.

trabalho.definições_de_notificação

Type: Map

Configurações de notificação que se aplicam a todas as notificações do trabalho.

Key Tipo Description
no_alert_for_skipped_runs booleano Se deve omitir o envio de alertas para execuções ignoradas.
no_alert_for_canceled_runs booleano Se deve pular o envio de alertas para execuções canceladas.

job.queue

Type: Map

Configurações de fila para a tarefa.

Key Tipo Description
enabled booleano Se é necessário habilitar a fila para o trabalho.

job.agendamento

Type: Map

Agende a configuração para a execução periódica do trabalho.

Key Tipo Description
quartz_cron_expression String Uma expressão Cron usando sintaxe Quartz que especifica quando o trabalho é executado. Por exemplo, 0 0 9 * * ? executa o trabalho todos os dias às 9:00 AM UTC.
timezone_id String O fuso horário da programação. Por exemplo, America/Los_Angeles ou UTC.
pause_status String Se o cronograma está pausado ou não. Valores válidos: PAUSED, UNPAUSED.

job.gatilho

Type: Map

Configuração de gatilho para execução de trabalho controlado por eventos.

Key Tipo Description
file_arrival Map Acionador com base na chegada de arquivos. Ver file_arrival.
table Map Gatilho baseado numa tabela. Consulte a tabela.
table_update Map Trigger baseado em atualizações de tabela. Consulte table_update.
periodic Map Acionador periódico. Ver periódico.

job.trigger.chegada_de_ficheiro

Type: Map

Configuração de acionamento com base na chegada do ficheiro.

Key Tipo Description
url String O caminho do arquivo para monitorar novos arquivos.
min_time_between_triggers_seconds Integer Tempo mínimo em segundos entre os eventos de gatilho.
wait_after_last_change_seconds Integer Aguarde o tempo em segundos após a última alteração de arquivo antes de acionar.

tarefa.disparo.tabela

Type: Map

Configuração de gatilho com base em uma tabela.

Key Tipo Description
table_names Sequence Uma lista de nomes de tabelas para monitorizar.
condition String A condição SQL que deve ser atendida para disparar o trabalho.

trabalho.disparador.atualização_de_tabela

Type: Map

Configuração de gatilho com base em atualizações de tabela.

Key Tipo Description
table_names Sequence Uma lista de nomes de tabelas para monitorar atualizações.
condition String A condição SQL que deve ser atendida para disparar o trabalho.
wait_after_last_change_seconds Integer Tempo de espera em segundos após a última atualização da tabela antes de acionar.

job.trigger.periódico

Type: Map

Configuração periódica do gatilho.

Key Tipo Description
interval Integer O valor do intervalo para o gatilho periódico.
unit String A unidade de tempo para o intervalo. Valores válidos: SECONDS, MINUTES, , HOURS, DAYSWEEKS, .

job.notificações_de_webhook

Type: Map

Configurações de notificações via Webhook para execução de tarefas.

Key Tipo Description
on_start Sequence Uma lista de IDs de notificação de webhook para notificar quando uma execução é iniciada.
on_success Sequence Uma lista de IDs de notificação de webhook para notificar quando uma execução for bem-sucedida.
on_failure Sequence Uma lista de IDs de notificação de webhook para notificar quando uma execução falha.
on_duration_warning_threshold_exceeded Sequence Uma lista de IDs de notificação de webhook para alertar quando a duração de uma execução exceder o limiar de aviso.

Examples

O exemplo a seguir define um trabalho com a chave de recurso hello-job com uma tarefa de bloco de anotações:

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

O exemplo a seguir define um trabalho com um bloco de anotações 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

Para obter exemplos adicionais de configuração de trabalho, consulte Configuração de trabalho.

Para obter informações sobre como definir tarefas de trabalho e substituir configurações de trabalho, consulte:

modelo (legado)

Type: Map

O recurso de modelo permite definir modelos herdados em pacotes. Em vez disso, a Databricks recomenda que se use modelos registados do Unity Catalog .

ponto_de_serviço_do_modelo

Type: Map

O recurso de endpoint de serviço do modelo permite definir pontos de serviço do modelo. Consulte Gerenciar pontos de extremidade de serviço de modelo.

model_serving_endpoints:
  <model_serving_endpoint-name>:
    <model_serving_endpoint-field-name>: <model_serving_endpoint-field-value>
Key Tipo Description
ai_gateway Map A configuração do AI Gateway para o ponto de extremidade de serviço. NOTA: Atualmente, apenas o modelo externo e endpoints de throughput provisionados são suportados. Veja ai_gateway.
config Map A configuração principal do ponto de extremidade de serviço. Consulte config.
name String O nome do endpoint de serviço. Este campo é obrigatório e deve ser exclusivo em um espaço de trabalho Databricks. Um nome de ponto de extremidade pode consistir em caracteres alfanuméricos, traços e sublinhados.
permissions Sequence O modelo que serve as permissões do ponto de extremidade. Consulte as permissões.
rate_limits Sequence Deprecated. Limites de taxa a serem aplicados ao endpoint de serviço. Use o AI Gateway para gerenciar limites de taxa.
route_optimized booleano Ative a otimização de rota para o endpoint de serviço.
tags Sequence Tags a serem anexadas ao ponto de acesso de serviço e propagadas automaticamente nos logs de faturamento.

ponto_de_serviço_do_modelo.portal_ai

Type: Map

Configuração do AI Gateway para o endpoint de serviço.

Key Tipo Description
guardrails Map Configuração de guarda-freio. Veja barreiras de proteção.
inference_table_config Map Configuração para registro de inferência em tabelas do Unity Catalog. Ver inference_table_config.
rate_limits Sequence Configurações de limite de taxa.
usage_tracking_config Map Configuração para rastrear o uso. Ver usage_tracking_config.

ponto_de_serviço_de_modelo.passarela_ai.proteções

Type: Map

A configuração de guarda-corpos do gateway de IA.

Key Tipo Description
input Map Configuração de guarda-corpos de entrada com campos como safety, pii.
output Map Configuração de guarda-corpos de saída com campos como safety, pii.
invalid_keywords Sequence Uma lista de palavras-chave a bloquear.

model_serving_endpoint.ai_gateway.inference_table_config

Type: Map

Configuração para registro de inferência em tabelas do Unity Catalog.

Key Tipo Description
catalog_name String O nome do catálogo no Unity Catalog.
schema_name String O nome do esquema no Unity Catalog.
table_name_prefix String O prefixo para nomes de tabelas de inferência.
enabled booleano Se o log da tabela de inferência está habilitado.

ponto_de_distribuição_de_modelos.ai_portal.configuração_de_rastreamento_de_uso

Type: Map

A configuração do gateway de IA para rastrear o uso.

Key Tipo Description
enabled booleano Se o rastreamento de uso está habilitado.

model_serving_endpoint.config

Type: Map

A configuração principal do ponto de extremidade de serviço.

Key Tipo Description
served_entities Sequence Uma lista de entidades a serem atendidas para atendimento no endpoint. Cada entidade servida contém campos como entity_name, entity_version, , workload_size, scale_to_zero_enabledworkload_type, environment_vars.
served_models Sequence (Preterido: use served_entities em vez disso) Uma lista de modelos servidos para serem servidos no ponto de extremidade.
traffic_config Map A configuração de tráfego que define como as invocações para o endpoint de serviço devem ser direcionadas. Ver traffic_config.
auto_capture_config Map Configuração para Tabelas de Inferência que registra automaticamente solicitações e respostas no Unity Catalog. Ver auto_capture_config.

model_serving_endpoint.config.traffic_config

Type: Map

A configuração de tráfego que define como as invocações para o endpoint de serviço devem ser direcionadas.

Key Tipo Description
routes Sequence Uma lista de rotas para distribuição de tráfego. Cada rota contém served_model_name e traffic_percentage.

model_serving_endpoint.config.auto_capture_config

Type: Map

Configuração para Tabelas de Inferência que registra automaticamente solicitações e respostas no Unity Catalog.

Key Tipo Description
catalog_name String O nome do catálogo no Unity Catalog.
schema_name String O nome do esquema no Unity Catalog.
table_name_prefix String O prefixo para nomes de tabelas de inferência.
enabled booleano Se o log da tabela de inferência está habilitado.

Example

O exemplo a seguir define um modelo do Unity Catalog ponto de extremidade de serviço:

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'

gasoduto

Type: Map

Os pipelines são suportados em Python para Databricks Asset Bundles. Consulte databricks.bundles.pipelines.

O recurso pipeline permite-lhe criar pipelines. Para obter informações sobre pipelines, consulte Lakeflow Spark Declarative Pipelines. Para obter um tutorial que usa o modelo Databricks Asset Bundles para criar um pipeline, consulte Develop Lakeflow Spark Declarative Pipelines with Databricks Asset Bundles.

pipelines:
  <pipeline-name>:
    <pipeline-field-name>: <pipeline-field-value>
Key Tipo Description
allow_duplicate_names booleano Se for falso, a implantação falhará se o nome estiver em conflito com outro pipeline.
budget_policy_id String Política orçamental deste gasoduto.
catalog String Um catálogo no Unity Catalog para publicar dados desse pipeline. Se target for especificado, as tabelas neste pipeline são publicadas num esquema target dentro de catalog (por exemplo, catalog.target.table). Se target não for especificado, nenhum dado será publicado no Unity Catalog.
channel String O Canal de Lançamento do Lakeflow Spark Declarative Pipelines que determina a versão a ser utilizada.
clusters Sequence As configurações de cluster para essa implantação de pipeline. Consulte cluster.
configuration Map A configuração para esta execução de pipeline.
continuous booleano Se o pipeline é contínuo ou acionado. Isto substitui trigger.
deployment Map Tipo de implantação deste pipeline. Consulte a implantação.
development booleano Se o pipeline está em modo de desenvolvimento. É definido para false por padrão.
dry_run booleano Se o gasoduto é um gasoduto de funcionamento seco.
edition String A edição do produto pipeline.
environment Map A especificação de ambiente para esse pipeline usada para instalar dependências na computação sem servidor. Ver ambiente. Essa chave só é suportada na CLI do Databricks versão 0.258 e superior.
event_log Map A configuração do log de eventos para este pipeline. Ver event_log.
filters Map Os filtros que determinam quais pacotes de pipeline devem ser incluídos no gráfico implantado. Veja filtros.
id String Identificador exclusivo para esta linha de processamento.
ingestion_definition Map A configuração de um pipeline de ingestão gerido. Essas configurações não podem ser usadas com libraries, schema, target ou catalog. Veja ingestion_definition.
libraries Sequence Uma lista de bibliotecas ou código necessários para esta implantação. Consulte pipeline.libraries.
lifecycle Map Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
name String Um nome amigável para esta canalização.
notifications Sequence As configurações de notificação para esse pipeline.
permissions Sequence As permissões do gasoduto. Consulte as permissões.
photon booleano Se o Photon está habilitado para esse pipeline.
root_path String O caminho raiz para esse pipeline. Isso é usado como o diretório raiz ao editar o pipeline na interface do usuário do Databricks e é adicionado ao sys.path ao executar códigos-fonte Python durante a execução do pipeline.
run_as Map A identidade sob a qual o pipeline é executado. Se não for especificado, o pipeline será executado como o usuário que criou o pipeline. Apenas user_name ou service_principal_name pode ser especificado. Se ambos forem especificados, um erro será gerado. Veja run_as.
schema String O esquema padrão (banco de dados) do qual as tabelas são lidas ou publicadas.
serverless booleano Se a computação sem servidor está habilitada para esse pipeline.
storage String O diretório raiz DBFS para armazenar pontos de verificação e tabelas.
tags Map Um mapa de tags associadas ao pipeline. Elas são encaminhadas para o cluster como tags de cluster e, portanto, estão sujeitas às mesmas limitações. Um máximo de 25 etiquetas pode ser adicionado ao pipeline.
target String Esquema de destino (banco de dados) para ao qual adicionar tabelas neste pipeline. Exatamente um dos schema ou target deve ser especificado. Para também publicar no Unity Catalog, especifique catalog. Este campo herdado foi descontinuado para a criação de pipelines em favor do campo schema.

canal de implantação

Type: Map

Configuração do tipo de implantação para o pipeline.

Key Tipo Description
kind String O tipo de implantação. Por exemplo, BUNDLE.
metadata_file_path String O caminho para o arquivo de metadados para a implantação.

pipeline.ambiente

Type: Map

Especificação de ambiente para instalação de dependências em computação sem servidor.

Key Tipo Description
dependencies Sequence Uma lista de dependências do pip, conforme suportada pela versão do pip neste ambiente. Cada dependência é uma linha de ficheiro de requisitos de pip.

pipeline.registo_de_eventos

Type: Map

Configuração do log de eventos para o pipeline.

Key Tipo Description
catalog String O registo de eventos é publicado sob o catálogo Unity Catalog.
name String O nome com o qual o registo de eventos é publicado no Catálogo Unity.
schema String O esquema do Unity Catalog sob o qual o registo de eventos é publicado.

pipeline.filtros

Type: Map

Filtros que determinam quais pacotes de pipeline devem ser incluídos no gráfico implantado.

Key Tipo Description
include Sequence Uma lista de nomes de pacotes a serem incluídos.
exclude Sequence Uma lista de nomes de pacotes a serem excluídos.

pipeline.ingestion_definition

Type: Map

Configuração para um pipeline de ingestão gerenciado. Essas configurações não podem ser usadas com libraries, schema, target ou catalog.

Key Tipo Description
connection_name String O nome da conexão a ser utilizada para ingestão.
ingestion_gateway_id String O ID do gateway de ingestão.
objects Sequence Required. Definições que especificam tabelas a replicar e o destino das tabelas replicadas. Cada objeto pode ser um SchemaSpec, TableSpec ou ReportSpec.
source_configuration Map Parâmetros de configuração da fonte ao nível do catálogo. Vê source_configuration.
table_configuration Map Configuração das tabelas de ingestão. Ver table_configuration.

SchemaSpec

Type: Map

Especificação do objeto de esquema para ingerir todas as tabelas de um esquema.

Key Tipo Description
source_schema String O nome do esquema de origem a ser ingerido.
destination_catalog String O nome do catálogo de destino no Unity Catalog.
destination_schema String O nome do esquema de destino no Unity Catalog.
table_configuration Map Configuração a ser aplicada a todas as tabelas neste esquema. Consulte pipeline.ingestion_definition.table_configuration.

TableSpec

Type: Map

Especificação de objeto de tabela para ingestão de uma tabela específica.

Key Tipo Description
source_schema String O nome do esquema de origem que contém a tabela.
source_table String O nome da tabela de origem que será ingerida.
destination_catalog String O nome do catálogo de destino no Unity Catalog.
destination_schema String O nome do esquema de destino no Unity Catalog.
destination_table String O nome da tabela de destino no Catálogo Unity.
table_configuration Map Configuração para esta tabela específica. Consulte pipeline.ingestion_definition.table_configuration.

ReportSpec

Type: Map

Especificação do objeto de relatório para importação de relatórios analíticos.

Key Tipo Description
source_url String A URL do relatório de origem.
source_report String O nome ou identificador do relatório de origem.
destination_catalog String O nome do catálogo de destino no Unity Catalog.
destination_schema String O nome do esquema de destino no Unity Catalog.
destination_table String O nome da tabela de destino para os dados do relatório.
table_configuration Map Configuração da tabela de relatório. Consulte pipeline.ingestion_definition.table_configuration.

pipeline.definição_de_ingestão.configuração_fonte

Type: Map

Configuração para a fonte.

Key Tipo Description
catalog Map Parâmetros de configuração da fonte ao nível do catálogo. Ver catálogo.
pipeline.definição_ingestão.source_configuration.catalog

Type: Map

Parâmetros de configuração da fonte ao nível do catálogo

Key Tipo Description
postgres Map Parâmetros de configuração ao nível de catálogo específicos do Postgres. Contém uma slot_config chave que é uma Map representando a configuração do slot do Postgres a ser utilizado para replicação lógica.
source_catalog String O nome do catálogo de origem.

pipeline.ingestion_definition.configuração_da_tabela

Type: Map

Opções de configuração para tabelas de ingestão.

Key Tipo Description
exclude_columns Sequence Uma lista de nomes de colunas a excluir para a ingestão. Quando não especificado, include_columns controla totalmente quais colunas devem ser ingeridas. Quando especificado, todas as outras colunas, incluindo as futuras, serão automaticamente incluídas para ingestão. Este campo é mutuamente exclusivo de include_columns.
include_columns Sequence Uma lista de nomes de colunas a incluir no processo de ingestão. Quando não especificado, todas as colunas exceto as em exclude_columns serão incluídas. As colunas futuras serão automaticamente incluídas. Quando for especificado, todas as outras colunas futuras serão automaticamente excluídas do processo de ingestão. Este campo é mutuamente exclusivo de exclude_columns.
primary_keys Sequence Uma lista de nomes de colunas a serem usados como chaves primárias para a tabela.
sequence_by Sequence Os nomes das colunas especificam a ordem lógica dos eventos nos dados de origem. O Spark Declarative Pipelines utiliza esta sequência para lidar com eventos de alteração que chegam fora de ordem.

pipeline.bibliotecas

Type: Sequence

Define a lista de bibliotecas ou código necessários a este pipeline.

Cada item da lista é uma definição:

Key Tipo Description
file Map O caminho para um ficheiro que define um pipeline e está armazenado nos repositórios do Databricks. Consulte pipeline.libraries.file.
glob Map O campo unificado para incluir o código-fonte. Cada entrada pode ser um caminho de bloco de anotações, um caminho de arquivo ou um caminho de pasta que termina /**. Este campo não pode ser utilizado em conjunto com notebook ou file. Consulte pipeline.libraries.glob.
notebook Map O caminho para um notebook que define um pipeline e é armazenado no espaço de trabalho do Databricks. Consulte pipeline.libraries.notebook.
whl String Este campo foi preterido

pipeline.bibliotecas.ficheiro

Type: Map

O caminho para um arquivo que define um pipeline e é armazenado no Databricks Repos.

Key Tipo Description
path String O caminho absoluto do código-fonte.

pipeline.bibliotecas.glob

Type: Map

O campo unificado para incluir o código-fonte. Cada entrada pode ser um caminho de bloco de anotações, um caminho de arquivo ou um caminho de pasta que termina /**. Este campo não pode ser utilizado em conjunto com notebook ou file.

Key Tipo Description
include String O código-fonte a ser incluído nos pipelines

pipeline.bibliotecas.notebook

Type: Map

O caminho para um notebook que define um pipeline e é armazenado no espaço de trabalho do Databricks.

Key Tipo Description
path String O caminho absoluto do código-fonte.

Example

O exemplo a seguir define um pipeline com a chave de recurso 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

Para obter exemplos adicionais de configuração de pipeline, consulte Configuração de pipeline.

monitor_de_qualidade (Catálogo Unity)

Type: Map

O recurso quality_monitor permite definir um monitor de tabelas do Unity Catalog . Para obter informações sobre monitores, consulte Perfilagem de dados.

quality_monitors:
  <quality_monitor-name>:
    <quality_monitor-field-name>: <quality_monitor-field-value>
Key Tipo Description
assets_dir String O diretório para armazenar ativos de monitoramento (por exemplo, painel, tabelas métricas).
baseline_table_name String Nome da tabela de linha de base a partir da qual as métricas de desvio são calculadas. As colunas na tabela monitorada também devem estar presentes na tabela da linha de base.
custom_metrics Sequence Métricas personalizadas para calcular na tabela monitorada. Estas podem ser métricas agregadas, métricas derivadas (de métricas agregadas já computadas) ou métricas de desvio (comparando métricas entre janelas de tempo). Ver custom_metrics.
inference_log Map Configuração para monitorar logs de inferência. Ver inference_log.
lifecycle Map Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
notifications Map As configurações de notificação para o monitor. Ver notificações.
output_schema_name String Esquema onde as tabelas métricas de saída são criadas.
schedule Map A programação para atualizar e refrescar automaticamente as tabelas de métricas. Veja a programação.
skip_builtin_dashboard booleano Se deve ignorar a criação de um painel padrão resumindo métricas de qualidade de dados.
slicing_exprs Sequence Lista de expressões de coluna com as quais fatiar dados para análise direcionada. Os dados são agrupados por cada expressão de forma independente, resultando em uma fatia separada para cada predicado e seus complementos. Para colunas de alta cardinalidade, apenas os 100 principais valores exclusivos por frequência gerarão fatias.
snapshot Map Configuração para monitorização de tabelas de captura. Veja o instantâneo.
table_name String O nome completo da tabela.
time_series Map Configuração para monitoramento de tabelas de séries temporais. Ver time_series.
warehouse_id String Argumento opcional para especificar o armazém para a criação do painel. Se não for especificado, será usado o primeiro armazém operacional.

monitor_qualidade.métricas_personalizadas

Type: Sequence

Uma lista de definições de métricas personalizadas.

Cada item da lista é um CustomMetric:

Key Tipo Description
definition String Modelo Jinja para uma expressão SQL que especifica como calcular a métrica. Consulte Criar definição de métrica.
input_columns Sequence Uma lista de nomes de colunas na tabela de entrada para a qual a métrica deve ser calculada. Pode usar :table para indicar que a métrica precisa de informações de várias colunas.
name String Nome da métrica nas tabelas de saída.
output_data_type String O tipo de saída da métrica personalizada.
type String Só pode ser um de CUSTOM_METRIC_TYPE_AGGREGATE, CUSTOM_METRIC_TYPE_DERIVEDou CUSTOM_METRIC_TYPE_DRIFT. As métricas CUSTOM_METRIC_TYPE_AGGREGATE e CUSTOM_METRIC_TYPE_DERIVED são calculadas numa única tabela, enquanto as métricas CUSTOM_METRIC_TYPE_DRIFT são comparadas na linha de base e na tabela de entrada, ou entre as duas janelas de tempo consecutivas.
  • CUSTOM_METRIC_TYPE_AGGREGATE: depende apenas das suas colunas existentes na sua tabela
  • CUSTOM_METRIC_TYPE_DERIVED: depende de métricas agregadas previamente calculadas
  • CUSTOM_METRIC_TYPE_DRIFT: dependem de métricas agregadas ou derivadas previamente calculadas

monitor_de_qualidade.configuracao_de_classificacao_de_dados

Type: Map

Configuração para classificação de dados.

Key Tipo Description
enabled booleano Se a classificação de dados está habilitada.

quality_monitor.inference_log

Type: Map

Configuração para monitorar logs de inferência.

Key Tipo Description
granularities Sequence As granularidades temporais para agregar registos de inferência (por exemplo, ["1 day"]).
model_id_col String O nome da coluna que contém a ID do modelo.
prediction_col String O nome da coluna que contém a previsão.
timestamp_col String O nome da coluna que contém a marca temporal.
problem_type String O tipo de problema de ML. Os valores válidos incluem PROBLEM_TYPE_CLASSIFICATION, PROBLEM_TYPE_REGRESSION.
label_col String O nome da coluna que contém o rótulo (verdade básica).

quality_monitor.Notificações

Type: Map

Configurações de notificação para o monitor.

Key Tipo Description
on_failure Map Configurações de notificação quando o monitor falha. Ver on_failure.
on_new_classification_tag_detected Map Configurações de notificação quando novas tags de classificação são detetadas. Ver on_new_classification_tag_detected.

quality_monitor.notifications.on_failure

Type: Map

Configurações de notificação quando o monitor falha.

Key Tipo Description
email_addresses Sequence Uma lista de endereços de e-mail para notificar sobre a falha do monitor.

quality_monitor.notificações.quando_nova_etiqueta_de_classificação_deteção

Type: Map

Configurações de notificação quando novas tags de classificação são detetadas.

Key Tipo Description
email_addresses Sequence Uma lista de endereços de e-mail para notificar quando novas tags de classificação forem detetadas.

quality_monitor.horário

Type: Map

Agende para atualizar e recarregar automaticamente as tabelas métricas.

Key Tipo Description
quartz_cron_expression String Uma expressão Cron usando a sintaxe Quartz. Por exemplo, 0 0 8 * * ? funciona todos os dias às 8:00 da manhã.
timezone_id String O fuso horário da programação (por exemplo, UTCAmerica/Los_Angeles, ).
pause_status String Se o agendamento está pausado. Valores válidos: PAUSED, UNPAUSED.

quality_monitor.snapshot

Type: Map

Configuração para monitorização de tabelas de captura.

monitor_de_qualidade.série_temporal

Configuração para monitoramento de tabelas de séries temporais.

Key Tipo Description
granularities Sequence As granularidades de tempo para a agregação de dados de séries temporais (por exemplo, ["30 minutes"]).
timestamp_col String O nome da coluna que contém a marca temporal.

Examples

Para obter um exemplo completo de pacote que define um quality_monitor, consulte o mlops_demo pacote.

Os exemplos a seguir definem monitores de qualidade para os tipos de perfil InferenceLog, TimeSeries e Snapshot .

# 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

modelo_registado (Catálogo Unity)

Type: Map

O recurso de modelo registrado permite definir modelos no Unity Catalog. Para obter informações sobre modelos registrados do Unity Catalog, consulte Manage model lifecycle in Unity Catalog.

registered_models:
  <registered_model-name>:
    <registered_model-field-name>: <registered_model-field-value>
Key Tipo Description
aliases Sequence Lista de aliases associados ao modelo registado. Consulte registered_model.aliases.
browse_only booleano Indica se o "principal" está limitado a recuperar metadados para o objeto associado através do privilégio BROWSE quando "include_browse" está ativado na solicitação.
catalog_name String O nome do catálogo onde residem o esquema e o modelo registrado.
comment String O comentário anexado ao modelo registado.
full_name String O nome de três níveis (totalmente qualificado) do modelo registado
grants Sequence Os subsídios associados ao modelo registado. Ver subvenção.
lifecycle Map Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
name String O nome do modelo registado.
schema_name String O nome do esquema onde reside o modelo registrado.
storage_location String O local de armazenamento na nuvem sob o qual os arquivos de dados da versão do modelo são armazenados.

registered_model.pseudónimos

Type: Sequence

Uma lista de pseudónimos associados ao modelo registado.

Cada item da lista é um Alias:

Key Tipo Description
alias_name String Nome do pseudónimo, por exemplo, «campeão» ou «latest_stable»
catalog_name String O nome do catálogo que contém a versão do modelo
id String O identificador exclusivo do alias
model_name String O nome do modelo pai registado da versão do modelo, em relação ao esquema pai
schema_name String O nome do esquema que contém a versão do modelo, em relação ao catálogo principal
version_num Integer Número de versão inteiro da versão do modelo para a qual esse alias aponta.

Example

O exemplo a seguir define um modelo registrado no Unity Catalog:

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

esquema (Unity Catalog)

Type: Map

Os esquemas são suportados em Python para Databricks Asset Bundles. Consulte databricks.bundles.schemas.

O tipo de recurso de esquema permite definir esquemas do Catálogo Unity para tabelas e outros ativos nos seus fluxos de trabalho e pipelines, que são criados como parte de um pacote. Um esquema, diferente de outros tipos de recursos, tem as seguintes limitações:

  • O proprietário de um recurso de esquema é sempre o usuário de implantação e não pode ser alterado. Se run_as for especificado no pacote, será ignorado nas operações do esquema.
  • Somente os campos suportados pela API de criação do objeto Schemas correspondente estão disponíveis para o recurso de esquema. Por exemplo, enable_predictive_optimization não é suportado, pois só está disponível na API de atualização .
schemas:
  <schema-name>:
    <schema-field-name>: <schema-field-value>
Key Tipo Description
catalog_name String O nome do catálogo principal.
comment String Uma descrição de texto de forma livre fornecida pelo usuário.
grants Sequence As subvenções associadas ao esquema. Ver subvenção.
lifecycle Map Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
name String O nome do esquema, relativo ao catálogo pai.
properties Map Um mapa de propriedades chave-valor anexadas ao esquema.
storage_root String A URL raiz de armazenamento para tabelas gerenciadas dentro do esquema.

Examples

O exemplo a seguir define um pipeline com a chave de recurso my_pipeline que cria um esquema Unity Catalog com a chave my_schema como destino:

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.

Um mapeamento de concessões de nível superior não é suportado pelo Databricks Asset Bundles, portanto, se você quiser definir concessões para um esquema, defina as concessões para o esquema dentro do mapeamento schemas. Para obter mais informações sobre subsídios, consulte Mostrar, conceder e revogar privilégios.

O exemplo a seguir define um esquema Unity Catalog com concessões:

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

âmbito_secreto

Type: Map

O recurso secret_scope permite definir escopos secretos em um pacote. Para obter informações sobre escopos secretos, consulte Gerenciamento de segredos.

secret_scopes:
  <secret_scope-name>:
    <secret_scope-field-name>: <secret_scope-field-value>
Key Tipo Description
backend_type String O tipo de back-end com o qual o escopo será criado. Se não for especificado, o padrão será DATABRICKS.
keyvault_metadata Map Os metadados do escopo secreto, caso o backend_type seja AZURE_KEYVAULT. Ver keyvault_metadata.
lifecycle Map Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
name String Nome do escopo solicitado pelo usuário. Os nomes de escopo são exclusivos.
permissions Sequence As permissões a serem aplicadas ao escopo secreto. As permissões são gerenciadas por meio de ACLs de escopo secreto. Consulte as permissões.

secret_scope.keyvault_metadata

Type: Map

Os metadados para escopos secretos apoiados pelo Cofre de Chaves do Azure.

Key Tipo Description
resource_id String O ID do recurso do Azure do Cofre de Chaves.
dns_name String O nome DNS do Azure Key Vault (Cofre de Chaves do Azure).

Examples

O exemplo a seguir define um escopo secreto que usa um fundo de cofre de chaves:

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

O exemplo a seguir define uma ACL personalizada usando escopos e permissões secretos:

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

Para obter um exemplo de pacote que demonstra como definir um escopo secreto e um trabalho com uma tarefa que lê a partir dele em um pacote, consulte o repositório GitHub de exemplos de pacote.

sql_armazém_de_dados

Type: Map

O recurso SQL warehouse permite definir um SQL warehouse em um pacote. Para obter informações sobre armazéns SQL, consulte Data warehousing on Azure Databricks.

sql_warehouses:
  <sql-warehouse-name>:
    <sql-warehouse-field-name>: <sql-warehouse-field-value>
Key Tipo Description
auto_stop_mins Integer O tempo em minutos que um SQL warehouse precisa estar inativo (por exemplo, sem consultas EM EXECUÇÃO), antes de ser automaticamente interrompido. Os valores válidos são 0, que indica que não há paragem automática, ou superior ou igual a 10. O padrão é 120.
channel Map Os detalhes do canal. Ver canal
cluster_size String O tamanho dos clusters alocados para este armazém de dados. Aumentar o tamanho de um cluster do Spark permite executar consultas maiores nele. Se quiser aumentar o número de consultas simultâneas, ajuste max_num_clusters. Para valores suportados, consulte cluster_size.
creator_name String O nome do usuário que criou o depósito.
enable_photon booleano Se o armazém deve usar clusters otimizados para Photon. É definido para false por padrão.
enable_serverless_compute booleano Se o depósito deve usar computação sem servidor.
instance_profile_arn String Deprecated. Perfil de instância usado para passar a função do IAM para o cluster,
lifecycle Map Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
max_num_clusters Integer O número máximo de clusters que o autoscaler criará para lidar com consultas simultâneas. Os valores devem ser menores ou iguais a 30 e maiores ou iguais a min_num_clusters. Define o valor padrão para min_clusters se não estiver definido.
min_num_clusters Integer O número mínimo de clusters disponíveis que serão mantidos para este SQL warehouse. Aumentar isso garantirá que um número maior de clusters esteja sempre em execução e, portanto, pode reduzir o tempo de inicialização a frio para novas consultas. Isso é semelhante aos núcleos reservados versus revogáveis em um gerenciador de recursos. Os valores devem ser superiores a 0 e inferiores ou iguais a min(max_num_clusters, 30). O padrão é 1.
name String O nome lógico do cluster. O nome deve ser exclusivo dentro de uma organização e ter menos de 100 caracteres.
permissions Sequence As permissões a serem aplicadas ao armazém. Consulte as permissões.
spot_instance_policy String Se deve utilizar instâncias spot. Os valores válidos são POLICY_UNSPECIFIED, COST_OPTIMIZED, RELIABILITY_OPTIMIZED. A predefinição é COST_OPTIMIZED.
tags Map Um conjunto de pares chave-valor que serão marcados em todos os recursos (por exemplo, instâncias da AWS e volumes do EBS) associados a esse SQL warehouse. O número de tags deve ser inferior a 45.
warehouse_type String O tipo de armazém, PRO ou CLASSIC. Se você quiser usar computação sem servidor, defina este campo como PRO e também como enable_serverless_computetrue.

sql_warehouse.canal

Type: Map

A configuração do canal para o SQL warehouse.

Key Tipo Description
name String O nome do canal. Os valores válidos incluem CHANNEL_NAME_CURRENT, CHANNEL_NAME_PREVIEW, CHANNEL_NAME_CUSTOM.
dbsql_version String A versão DBSQL para canais personalizados.

Example

O exemplo a seguir define um SQL warehouse:

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

tabela_de_base_de_dados_sincronizada

Type: Map

O recurso de tabela de banco de dados sincronizado permite que você defina tabelas de banco de dados Lakebase em um pacote.

Para obter informações sobre tabelas de banco de dados sincronizadas, consulte O que é uma instância de banco de dados?.

synced_database_tables:
  <synced_database_table-name>:
    <synced_database_table-field-name>: <synced_database_table-field-value>
Key Tipo Description
database_instance_name String O nome da instância do banco de dados de destino. Isso é necessário ao criar tabelas de banco de dados sincronizadas em catálogos padrão. Isso é opcional ao criar tabelas de banco de dados sincronizadas em catálogos registrados.
lifecycle Map Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
logical_database_name String O nome do objeto de banco de dados Postgres de destino (banco de dados lógico) para esta tabela.
name String O nome completo da tabela, no formato catalog.schema.table.
spec Map A especificação da tabela do banco de dados. Consulte a especificação da tabela de banco de dados sincronizada.

tabela_base_de_dados_sincronizada.spec

Type: Map

A especificação da tabela do banco de dados.

Key Tipo Description
create_database_objects_if_missing booleano Se é necessário criar o banco de dados lógico e os recursos de esquema da tabela sincronizada, caso ainda não existam.
existing_pipeline_id String O ID de um pipeline existente. Se isso for definido, a tabela sincronizada será empacotada em bloco no pipeline existente referenciado. Isso evita a criação de um novo pipeline e permite o compartilhamento da computação existente. Nesse caso, a tabela sincronizada scheduling_policy deve corresponder à política de agendamento do pipeline existente. No máximo um dos existing_pipeline_id e new_pipeline_spec deve ser definido.
new_pipeline_spec Map A especificação para uma nova canalização. Ver new_pipeline_spec. No máximo um dos existing_pipeline_id e new_pipeline_spec deve ser definido.
primary_key_columns Sequence A lista de nomes de colunas que formam a chave primária.
scheduling_policy String A política de agendamento para sincronização. Os valores válidos incluem SNAPSHOT, CONTINUOUS.
source_table_full_name String O nome completo da tabela de origem no formato catalog.schema.table.
timeseries_key String Chave de série temporal para eliminar a duplicação de linhas com a mesma chave primária.

synced_database_table.spec.new_pipeline_spec

Type: Map

A especificação para um novo pipeline utilizado na tabela de bases de dados sincronizada.

Key Tipo Description
budget_policy_id String O ID da política orçamental a definir no oleoduto recém-criado.
storage_catalog String O catálogo da canalização para armazenar ficheiros intermédios, como pontos de verificação e registos de eventos. Este precisa ser um catálogo padrão onde o usuário tem permissões para criar tabelas Delta.
storage_schema String O esquema do pipeline para armazenar ficheiros intermediários, como checkpoints e logs de eventos. Isso precisa estar no catálogo padrão onde o usuário tem permissões para criar tabelas Delta.

Examples

O exemplo a seguir define uma tabela de banco de dados sincronizada dentro de um catálogo de banco de dados correspondente:

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'

O exemplo a seguir define uma tabela de banco de dados sincronizada dentro de um catálogo padrão:

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'

Este exemplo cria uma tabela de banco de dados sincronizada e personaliza a programação do pipeline para ela. Pressupõe que já tenha:

  • Uma instância de banco de dados chamada my-database-instance
  • Um catálogo padrão chamado my_standard_catalog
  • Um esquema no catálogo padrão chamado default
  • Uma tabela delta de origem nomeada source_delta.schema.customer com a chave primária 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 * * ?'

volume (Catálogo Unity)

Type: Map

Os volumes são suportados em Python para Databricks Asset Bundles. Consulte databricks.bundles.volumes.

O tipo de recurso de volume permite definir e criar volumes do Unity Catalog como parte integrante de um pacote. Ao implantar um pacote com um volume definido, observe que:

  • Um volume não pode ser referenciado no artifact_path do pacote até que ele exista no espaço de trabalho. Portanto, se você quiser usar o Databricks Asset Bundles para criar o volume, você deve primeiro definir o volume no pacote, implantá-lo para criar o volume e, em seguida, fazer referência a ele no artifact_path em implantações subsequentes.
  • Os volumes no pacote não são precedidos com o prefixo dev_${workspace.current_user.short_name} quando o destino de implantação tem mode: development configurado. No entanto, você pode configurar manualmente esse prefixo. Consulte Predefinições personalizadas.
volumes:
  <volume-name>:
    <volume-field-name>: <volume-field-value>
Key Tipo Description
catalog_name String O nome do catálogo do esquema e do volume.
comment String O comentário anexado ao volume.
grants Sequence As subvenções associadas à publicação. Ver subvenção.
lifecycle Map Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído. Consulte o ciclo de vida.
name String O nome do volume.
schema_name String O nome do esquema onde está o volume.
storage_location String O local de armazenamento na nuvem.
volume_type String O tipo de volume, ou EXTERNAL ou MANAGED. Um volume externo está localizado num local externo específico. Um volume gerenciado está localizado no local padrão especificado pelo esquema pai, pelo catálogo pai ou pelo metastore. Consulte Volumes gerenciados versus volumes externos.

Example

O exemplo a seguir cria um volume Unity Catalog com a chave my_volume_id:

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

Para ver um exemplo de pacote que executa um trabalho que grava num ficheiro no volume do Catálogo Unity, consulte o repositório GitHub bundle-examples.

Objetos comuns

subvenção

Type: Map

Define o principal e os privilégios a serem concedidos a esse principal. Para obter mais informações sobre subsídios, consulte Mostrar, conceder e revogar privilégios.

Key Tipo Description
principal String O nome do principal ao qual serão concedidos privilégios. Pode ser um usuário, grupo ou entidade de serviço.
privileges Sequence Os privilégios a conceder à entidade especificada. Os valores válidos dependem do tipo de recurso (por exemplo, SELECT, , MODIFY, CREATE, USAGE, READ_FILESWRITE_FILES, , EXECUTE, ). ALL_PRIVILEGES

Example

O exemplo a seguir define um esquema Unity Catalog com concessões:

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

ciclo de vida

Type: Map

Contém as configurações do ciclo de vida de um recurso. Ele controla o comportamento do recurso quando ele é implantado ou destruído.

Key Tipo Description
prevent_destroy booleano Configuração do ciclo de vida para evitar que o recurso seja destruído.