Databricks ativo Bundles recurso
Databricks O ativo Bundles permite que o senhor especifique informações sobre o recurso Databricks usado pelo pacote no mapeamento resources
na configuração do pacote. Consulte recurso mapping e recurso key reference.
Este artigo descreve os tipos de recursos suportados para pacotes e fornece detalhes e um exemplo para cada tipo suportado. Para obter mais exemplos, consulte Exemplos de configuração de pacote.
Para gerar YAML para qualquer recurso existente, use o comando databricks bundle generate
. Consulte Gerar um arquivo de configuração de pacote.
Recurso suportado
A tabela a seguir lista os tipos de recurso compatíveis com os pacotes. 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.
são definidos usando a carga de solicitação de criação de operações do objeto correspondente. Databricks REST API correspondente, onde os campos suportados do objeto, expressos como YAML, são as propriedades suportadas do recurso. Os links para a documentação das cargas úteis correspondentes de cada recurso estão listados na tabela.
O comando databricks bundle validate
retorna avisos se forem encontradas propriedades de recurso desconhecidas nos arquivos de configuração do pacote.
Recursos | Objeto correspondente da API REST |
---|---|
registered_model (Unity Catalog) | |
schema (Unity Catalog) | |
volume (Unity Catalog) |
agrupamento
Type: Map
O recurso de clustering define um clustering.
clusters:
<cluster-name>:
<cluster-field-name>: <cluster-field-value>
Chave | Tipo | Descrição |
---|---|---|
| Booleana | Quando definido como true, os valores fixos e default da política serão usados para os campos que forem omitidos. Quando definido como falso, somente valores fixos da política serão aplicados. |
| Mapa | Parâmetros necessários para escalonar automaticamente o clustering para cima e para baixo com base na carga. Veja autoscale. |
| Integer | Encerra automaticamente o clustering depois que ele fica inativo por esse tempo em minutos. Se não for definido, esse clustering não será encerrado automaticamente. Se especificado, o limite deve estar entre 10 e 10.000 minutos. Os usuários também podem definir esse valor como 0 para desativar explicitamente o encerramento automático. |
| Mapa | Atributos relacionados ao clustering em execução no serviço Amazon Web. Se não for especificado na criação do clustering, será usado um conjunto de valores default. Veja aws_attributes. |
| Mapa | Atributos relacionados ao clustering em execução em Microsoft Azure. Se não for especificado na criação do clustering, será usado um conjunto de valores default. Veja azure_attributes. |
| Mapa | A configuração para entrega de spark logs a um destino de armazenamento de longo prazo. Veja clustering. |
| String | nome do clustering solicitado pelo usuário. Isso não precisa ser exclusivo. Se não for especificado na criação, o nome do clustering será uma cadeia de caracteres vazia. |
| Mapa | Tags adicionais para recurso de agrupamento. Databricks marcará todos os recursos de clustering (por exemplo, instâncias do AWS e volumes do EBS) com essas marcas, além do |
| String | O modelo de governança de dados a ser usado ao acessar dados de um clustering. Veja data_security_mode. |
| Mapa | A imagem personalizada do Docker. Veja Docker. |
| String | O ID opcional da instância pool para o driver do clustering pertence. O clustering pool usa a instância pool com id (instance_pool_id) se o driver pool não estiver atribuído. |
| String | O tipo de nó do driver do Spark. Observe que esse campo é opcional; se não for definido, o tipo de nó do driver será definido como o mesmo valor de |
| Booleana | autoscale Local Storage: quando ativado, esse clustering adquirirá dinamicamente espaço em disco adicional quando o worker Spark estiver com pouco espaço em disco. Esse recurso requer permissões específicas no site AWS para funcionar corretamente - consulte o Guia do Usuário para obter mais detalhes. |
| Booleana | Se o LUKS deve ser ativado nos discos locais das VMs de clustering |
| Mapa | Atributos relacionados ao clustering em execução no Google Cloud Platform. Se não for especificado na criação do clustering, será usado um conjunto de valores default. Veja gcp_attributes. |
| Sequência | A configuração para armazenar o script de inicialização. Qualquer número de destinos pode ser especificado. Os scripts são executados sequencialmente na ordem fornecida. Veja init_scripts. |
| String | O ID opcional da instância pool à qual o clustering pertence. |
| Booleana | Esse campo só pode ser usado quando |
| String | O tipo de compute descrito por esta especificação compute. |
| String | Esse campo codifica, por meio de um único valor, o recurso disponível para cada um dos nós do Spark nesse clustering. Por exemplo, os nós do Spark podem ser provisionados e otimizados para cargas de trabalho intensivas de memória ou compute. Uma lista dos tipos de nós disponíveis pode ser recuperada usando o método:Chamada de API /listNodeTypes. |
| Integer | Número de nós worker que esse clustering deve ter. Um clustering tem um driver Spark e um executor |
| Sequência | As permissões de clustering. Veja as permissões. |
| String | A ID da política de cluster usada para criar o clustering, se aplicável. |
| String | Determina o mecanismo de tempo de execução do clustering, |
| String | Nome de usuário único se data_security_mode for |
| Mapa | Um objeto que contém um conjunto de configurações opcionais especificadas pelo usuário Spark par key-value. Os usuários também podem passar uma série de opções extras de JVM para o driver e o executor por meio de |
| Mapa | Um objeto que contém um conjunto de variáveis de ambiente opcionais, especificadas pelo usuário, para key-value. |
| String | A versão Spark do clustering, por exemplo. |
| Sequência | SSH público key conteúdo que será adicionado a cada nó Spark nesse clustering. A chave privada correspondente pode ser usada para fazer login com o nome de usuário |
| Booleana | Esse campo só pode ser usado quando |
| Mapa | clustering Atributos que mostram os tipos de carga de trabalho de clustering. Veja workload_type. |
Exemplos
O exemplo a seguir cria um clustering dedicado (usuário único) para o usuário atual com 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 clustering simples my_cluster
e o define como o clustering a ser usado para executar o Notebook 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'
painel
Type: Map
O recurso de dashboard permite que o senhor gerencie AI/BI dashboards em um pacote. Para obter informações sobre AI/BI dashboards, consulte Dashboards.
dashboards:
<dashboard-name>:
<dashboard-field-name>: <dashboard-field-value>
Chave | Tipo | Descrição |
---|---|---|
| String | O nome de exibição do painel. |
| String | A etag do painel. Pode ser fornecido opcionalmente nas atualizações para garantir que o painel não tenha sido modificado desde a última leitura. |
| String | O caminho local do ativo do dashboard, incluindo o nome do arquivo. Os painéis exportados sempre têm a extensão de arquivo |
| Sequência | As permissões do painel. Veja as permissões. |
| Qualquer um | O conteúdo do painel na forma de cadeias de caracteres serializadas. |
| String | O ID do depósito usado para executar o painel. |
Exemplo
O exemplo a seguir inclui e implanta a amostra do painel de análise de viagens de táxi de Nova York no site Databricks workspace.
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}
Se o senhor usar a interface do usuário para modificar o painel, as modificações feitas por meio da interface do usuário não serão aplicadas ao arquivo JSON do painel no pacote local, a menos que o atualize explicitamente usando bundle generate
. Você pode usar a opção --watch
para pesquisar e recuperar continuamente as alterações no painel. Consulte Gerar um arquivo de configuração de pacote.
Além disso, se o senhor tentar implantar um pacote que contenha um arquivo JSON de dashboard diferente do arquivo workspace remoto, ocorrerá um erro. Para forçar a implantação e substituir o painel no site remoto workspace pelo local, use a opção --force
. Veja implantado a bundle.
experimento
Type: Map
O recurso de experimento permite que o senhor defina experimentos do MLflow em um pacote. Para obter informações sobre os experimentos do MLflow, consulte Organizar treinamento execução com os experimentos do MLflow.
experiments:
<experiment-name>:
<experiment-field-name>: <experiment-field-value>
Chave | Tipo | Descrição |
---|---|---|
| String | O local onde os artefatos do experimento são armazenados. |
| String | O nome amigável que identifica o experimento. |
| Sequência | As permissões do experimento. Veja as permissões. |
| Sequência | Metadados adicionais par key-value. Veja as tags. |
Exemplo
O exemplo a seguir define um experimento que todos os usuários podem view:
resources:
experiments:
experiment:
name: my_ml_experiment
permissions:
- level: CAN_READ
group_name: users
description: MLflow experiment used to track runs
Trabalho
Type: Map
O recurso Job permite que o senhor defina o Job e a tarefa correspondente em seu pacote. Para obter informações sobre o Job, consulte a orquestração usando Databricks Jobs. Para um tutorial que usa um Databricks ativo Bundles padrão para criar um trabalho, consulte Desenvolver um trabalho com Databricks ativo Bundles.
jobs:
<job-name>:
<job-field-name>: <job-field-value>
Chave | Tipo | Descrição |
---|---|---|
| String | O ID da política de orçamento especificada pelo usuário a ser usada para esse trabalho. Se não for especificado, uma política de orçamento default poderá ser aplicada ao criar ou modificar o trabalho. Consulte |
| Mapa | Uma propriedade contínua opcional para esse trabalho. A propriedade contínua garantirá que sempre haverá uma execução. Somente um dos |
| Mapa | Informações de implantação do Job gerenciar por fontes externas. Veja a implantação. |
| String | Uma descrição opcional para o trabalho. O tamanho máximo é de 27700 caracteres na codificação UTF-8. |
| String | Modo de edição do trabalho, |
| Mapa | Um conjunto opcional de endereços email que é notificado quando a execução desse trabalho começa ou é concluída, bem como quando esse trabalho é excluído. Veja o e-mail. |
| Sequência | Uma lista de especificações do ambiente de execução da tarefa que pode ser referenciada por serverless tarefa desse Job. É necessário que um ambiente esteja presente para serverless tarefa. Para a tarefa serverless Notebook, o ambiente pode ser acessado no painel de ambiente do Notebook. Para outras serverless tarefas, é necessário especificar o ambiente da tarefa usando environment_key nas configurações da tarefa. Veja os ambientes. |
| String | O formato do trabalho. |
| Mapa | Uma especificação opcional para um repositório Git remoto que contém o código-fonte usado pela tarefa. O campo git_source e o campo tarefa source definidos como GIT não são recomendados para pacotes, pois 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 da 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, de modo que o código-fonte da tarefa seja o workspace. |
| Mapa | Um conjunto opcional de regras de integridade que podem ser definidas para esse trabalho. Veja saúde. |
| Sequência | Uma lista de especificações de agrupamento de trabalhos que podem ser compartilhadas e reutilizadas pela tarefa desse trabalho. Veja clustering. |
| Integer | Um número máximo opcional permitido de execução concorrente do trabalho. Defina esse valor se o senhor quiser poder executar várias execuções do mesmo trabalho simultaneamente. Veja max_concurrent_runs. |
| String | Um nome opcional para o trabalho. O tamanho máximo é de 4096 bytes na codificação UTF-8. |
| Mapa | Configurações de notificação opcionais que são usadas ao enviar notificações para cada um dos sites |
| Sequência | Job-definições de parâmetros de nível. Veja os parâmetros. |
| String | O PerformanceTarget define o desempenho ou a economia que a execução da execução no serverless deve ter. |
| Sequência | As permissões do trabalho. Veja as permissões. |
| Mapa | As configurações de fila do trabalho. Veja a fila. |
| Mapa | Configuração somente para gravação. Especifica o usuário ou a entidade de serviço em que o trabalho é executado. Se não for especificado, o trabalho será executado como o usuário que criou o trabalho. |
| Mapa | Um programador periódico opcional para esse trabalho. O comportamento do default é que o trabalho só é executado quando acionado ao clicar em "Executar agora" na interface do usuário do Jobs ou ao enviar uma solicitação API para |
| Mapa | Um mapa de tags associadas ao trabalho. Elas são encaminhadas ao clustering como Cluster Tag para o clustering de trabalhos e estão sujeitas às mesmas limitações da Cluster Tag. Um máximo de 25 tags pode ser adicionado ao trabalho. |
| Sequência | Uma lista de especificações de tarefa a serem executadas por esse Job. Consulte Adicionar tarefa ao trabalho em Databricks ativo Bundles. |
| Integer | Um tempo limite opcional aplicado a cada execução desse trabalho. Um valor de |
| Mapa | Uma configuração para acionar uma execução quando determinadas condições são atendidas. Veja o gatilho. |
| Mapa | Uma coleção de IDs de notificação do sistema para notificar quando a execução desse trabalho for iniciada ou concluída. Veja webhook_notifications. |
Exemplo
O exemplo a seguir define um Job com o recurso key hello-job
com uma tarefa de Notebook:
resources:
jobs:
hello-job:
name: hello-job
tasks:
- task_key: hello-task
notebook_task:
notebook_path: ./hello.py
Para obter informações sobre como definir a tarefa do trabalho e substituir as configurações do trabalho, consulte Adicionar tarefa ao trabalho em Databricks ativo Bundles, Substituir configurações de tarefa do trabalho em Databricks ativo Bundles e Substituir configurações de clustering em Databricks ativo Bundles.
O campo Job git_source
e o campo tarefa source
definidos como GIT
não são recomendados para pacotes, pois os caminhos relativos locais podem não apontar para o mesmo conteúdo no repositório Git e os pacotes esperam que um Job 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, de modo que o código-fonte da tarefa seja o workspace.
modelo (legado)
Type: Map
O recurso de modelo permite que o senhor defina modelos legados em pacotes. A Databricks recomenda que o senhor use os modelos registrados do Unity Catalog.
model_serving_endpoint
Type: Map
O recurso model_serving_endpoint permite que o senhor defina o endpoint do modelo de serviço. Consulte o endpoint gerenciar servindo modelo.
model_serving_endpoints:
<model_serving_endpoint-name>:
<model_serving_endpoint-field-name>: <model_serving_endpoint-field-value>
Chave | Tipo | Descrição |
---|---|---|
| Mapa | A configuração do AI Gateway para o endpoint de serviço. OBSERVAÇÃO: no momento, somente o modelo externo e o ponto de extremidade da taxa de transferência de provisionamento são compatíveis. Ver IA. |
| Mapa | A configuração principal do endpoint de serviço. Veja a configuração. |
| String | O nome do endpoint de serviço. Esse campo é obrigatório e deve ser exclusivo em um site Databricks workspace. Um nome endpoint pode consistir em caracteres alfanuméricos, traços e sublinhado. |
| Sequência | As permissões do servindo modelo endpoint. Veja as permissões. |
| Sequência | Obsoleto. Limites de taxa a serem aplicados ao endpoint de atendimento. Use o AI Gateway para gerenciar os limites de taxa. |
| Booleana | Habilite a otimização de rota para o serviço endpoint. |
| Sequência | Tags a serem anexadas ao serviço endpoint e propagadas automaticamente para o faturamento logs. Veja as tags. |
Exemplo
O exemplo a seguir define um Unity Catalog servindo o modelo endpoint:
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'
pipeline
Type: Map
O pipeline recurso permite que o senhor crie o DLT pipeline. Para obter informações sobre o pipeline, consulte DLT. Para um tutorial que usa o padrão Databricks ativo Bundles para criar um pipeline, consulte Desenvolver o pipeline DLT com Databricks ativo Bundles.
pipelines:
<pipeline-name>:
<pipeline-field-name>: <pipeline-field-value>
Chave | Tipo | Descrição |
---|---|---|
| Booleana | Se for falso, a implementação falhará se o nome entrar em conflito com o de outro pipeline. |
| String | Um catálogo no Unity Catalog para publicar dados desse pipeline. Se |
| String | O canal de versão do DLT que especifica qual versão do DLT deve ser usada. |
| Sequência | As configurações de clustering para essa implementação pipeline. Veja clustering. |
| Mapa | A configuração para a execução desse pipeline. |
| Booleana | Se o pipeline é contínuo ou acionado. Isso substitui |
| Mapa | Tipo de implementação desse pipeline. Veja a implantação. |
| Booleana | Se o pipeline está em modo de desenvolvimento. padrão para falso. |
| Booleana | Se o pipeline é uma execução seca pipeline. |
| String | A edição do produto de pipeline. |
| Mapa | A configuração do evento log para este pipeline. Veja event_log. |
| Mapa | Os filtros que determinam qual pipeline pacote deve ser incluído no gráfico implantado. Veja os filtros. |
| String | Identificador exclusivo para esse pipeline. |
| Mapa | A configuração para uma ingestão gerenciar pipeline. Essas configurações não podem ser usadas com as configurações |
| Sequência | biblioteca ou código necessário para essa implantação. Ver biblioteca. |
| String | Um nome amigável para esse pipeline. |
| Sequência | As configurações de notificação para esse pipeline. Veja as notificações. |
| Sequência | As permissões do pipeline. Veja as permissões. |
| Booleana | Se o Photon está ativado para esse pipeline. |
| String | O esquema default (banco de dados) de onde as tabelas são lidas ou publicadas. |
| Booleana | Se serverless compute está ativado para este pipeline. |
| String | O diretório DBFS root para armazenar pontos de controle e tabelas. |
| String | Esquema de destino (banco de dados) para adicionar tabelas nesse pipeline. Exatamente um dos |
| Mapa | Obsoleto. Qual acionador de pipeline usar. Em vez disso, use |
Exemplo
O exemplo a seguir define um pipeline com o recurso key hello-pipeline
:
resources:
pipelines:
hello-pipeline:
name: hello-pipeline
clusters:
- label: default
num_workers: 1
development: true
continuous: false
channel: CURRENT
edition: CORE
photon: false
libraries:
- notebook:
path: ./pipeline.py
quality_monitor (Unity Catalog)
Type: Map
O recurso quality_monitor permite que o senhor defina um monitor de tabela do Unity Catalog. Para obter informações sobre monitores, consulte Introdução ao Databricks lakehouse monitoramento.
quality_monitors:
<quality_monitor-name>:
<quality_monitor-field-name>: <quality_monitor-field-value>
Chave | Tipo | Descrição |
---|---|---|
| String | O diretório para armazenar o monitoramento ativo (por exemplo, o dashboard, tabelas métricas). |
| String | Nome da tabela de linha de base a partir da qual as métricas de desvio são computadas. As colunas na tabela monitorada também devem estar presentes na tabela de linha de base. |
| Sequência | Métricas personalizadas para compute na mesa monitorada. Elas podem ser métricas agregadas, métricas derivadas (a partir de métricas agregadas já computadas) ou métricas de desvio (comparando métricas entre janelas de tempo). Veja custom_metrics. |
| Mapa | Configuração para inferência de monitoramento logs. Veja inference_log. |
| Mapa | As configurações de notificação do monitor. Veja as notificações. |
| String | Esquema em que as tabelas de métricas de saída são criadas. |
| Mapa | O programar para atualizar e refrescar automaticamente as tabelas métricas. Veja programar. |
| Booleana | Se o senhor deve deixar de criar um painel default resumindo as métricas de qualidade dos dados. |
| Sequência | Lista de expressões de coluna para 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, somente os 100 principais valores exclusivos por frequência gerarão fatias. |
| Mapa | Configuração para monitoramento de tabelas de instantâneos. |
| String | O nome completo da tabela. |
| Mapa | Configuração para tabelas de séries temporais de monitoramento. Veja time_series. |
| String | Argumento opcional para especificar o depósito para a criação do painel. Se não for especificado, o primeiro depósito em execução será usado. |
Exemplos
Para ver um pacote de exemplo completo que define um quality_monitor
, consulte o pacote mlops_demo.
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
registered_model (Unity Catalog)
Type: Map
O recurso de modelo registrado permite que o senhor defina modelos no Unity Catalog. Para obter informações sobre Unity Catalog os modelos registrados em, consulte gerenciar o ciclo de vida do Unity Catalog modelo em.
registered_models:
<registered_model-name>:
<registered_model-field-name>: <registered_model-field-value>
Chave | Tipo | Descrição |
---|---|---|
| String | O nome do catálogo em que o esquema e o modelo registrado residem. |
| String | O comentário anexado ao modelo registrado. |
| Sequência | As bolsas associadas ao modelo registrado. Veja subsídios. |
| String | O nome do modelo registrado. |
| String | O nome do esquema em que o modelo registrado reside. |
| String | O local de armazenamento na nuvem sob o qual os arquivos de dados da versão do modelo são armazenados. |
Exemplo
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
schema (Unity Catalog)
Type: Map
O tipo de recurso schema permite que o senhor defina Unity Catalog esquemas para tabelas e outros ativos em seu fluxo de trabalho e pipeline criados como parte de um pacote. Um esquema, diferente de outros tipos de recurso, 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, ele será ignorado pelas operações no esquema. - Somente os campos suportados pela API de criação de objeto Schemas correspondente estão disponíveis para o recurso de esquema. Por exemplo, o site
enable_predictive_optimization
não é compatível, pois está disponível apenas na API de atualização.
schemas:
<schema-name>:
<schema-field-name>: <schema-field-value>
Chave | Tipo | Descrição |
---|---|---|
| String | O nome do catálogo principal. |
| String | Uma descrição de texto em formato livre fornecida pelo usuário. |
| Sequência | As concessões associadas ao esquema. Veja subsídios. |
| String | O nome do esquema, relativo ao catálogo principal. |
| Mapa | Um mapa de key-value properties anexado ao esquema. |
| String | O URL da raiz de armazenamento para gerenciar tabelas dentro do esquema. |
Exemplos
O exemplo a seguir define um pipeline com o recurso key my_pipeline
que cria um esquema Unity Catalog com o key 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 ativo Bundles, portanto, se o senhor quiser definir concessões para um esquema, defina as concessões para o esquema dentro do mapeamento schemas
. Para obter mais informações sobre concessões, consulte Mostrar, conceder e revogar privilégios.
O exemplo a seguir define um esquema do 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
volume (Unity Catalog)
Type: Map
O tipo de recurso de volume permite que o senhor defina e crie volumes do Unity Catalog como parte de um pacote. Ao implantar um feixe com um volume definido, observe que
- Um volume não pode ser referenciado no
artifact_path
para o pacote até que ele exista no workspace. Portanto, se quiser usar Databricks ativo Bundles para criar o volume, o senhor deve primeiro definir o volume no bundle, implantá-lo para criar o volume e, em seguida, fazer referência a ele noartifact_path
em implantações subsequentes. - Os volumes no pacote não são prefixados com o prefixo
dev_${workspace.current_user.short_name}
quando o destino de implantação temmode: development
configurado. No entanto, você pode configurar manualmente esse prefixo. Consulte Predefinições personalizadas.
volumes:
<volume-name>:
<volume-field-name>: <volume-field-value>
Chave | Tipo | Descrição |
---|---|---|
| String | O nome do catálogo do esquema e do volume. |
| String | O comentário anexado ao volume. |
| Sequência | Os subsídios associados ao volume. Veja subsídios. |
| String | O nome do volume. |
| String | O nome do esquema em que o volume está. |
| String | O local de armazenamento na nuvem. |
| String | O tipo de volume, |
Exemplo
O exemplo a seguir cria um volume Unity Catalog com o key my_volume
:
resources:
volumes:
my_volume:
catalog_name: main
name: my_volume
schema_name: my_schema
Para obter um exemplo de pacote que executa um trabalho que grava em um arquivo no volume Unity Catalog, consulte o repositório bundle-examples GitHub.
Objetos comuns
subsídios
Type: Sequence
Chave | Tipo | Descrição |
---|---|---|
| String | O nome do diretor que receberá privilégios. |
| Sequência | Os privilégios a serem concedidos à entidade especificada. |