Compartilhar via


Referência de propriedades de Declarative Pipelines do Lakeflow

Este artigo fornece uma referência para a especificação de configuração JSON do Lakeflow Declarative Pipelines e as propriedades da tabela no Azure Databricks. Para obter mais detalhes sobre como usar essas várias propriedades e configurações, consulte os seguintes artigos:

Configurações de Pipelines Declarativos do Lakeflow

Campos
id
Tipo: string
Um identificador globalmente exclusivo para esse pipeline. O identificador é atribuído pelo sistema e não pode ser alterado.
name
Tipo: string
Um nome amigável para esse pipeline. O nome pode ser usado para identificar trabalhos de pipeline na interface do usuário.
configuration
Tipo: object
Uma lista opcional de configurações a serem adicionadas à configuração do Spark no cluster que executará o pipeline. Essas configurações são lidas pelo runtime do Lakeflow Declarative Pipelines e estão disponíveis para consultas de pipeline por meio da configuração do Spark.
Os elementos precisam ser formatados como pares key:value.
libraries
Tipo: array of objects
Uma matriz de notebooks que contém o código do pipeline e os artefatos necessários.
clusters
Tipo: array of objects
Uma matriz de especificações para os clusters executarem o pipeline.
Se isso não for especificado, os pipelines selecionarão automaticamente uma configuração de cluster padrão para o pipeline.
development
Tipo: boolean
Um sinalizador que indica onde o pipeline deve ser executado
Modo development ou production.
O valor padrão é true
notifications
Tipo: array of objects
Uma matriz opcional de especificações para notificações por email quando uma atualização de pipeline é concluída, falha com um erro repetível, falha com um erro não repetível ou um fluxo falha.
continuous
Tipo: boolean
Um sinalizador que indica se o pipeline deve ser executado continuamente.
O valor padrão é false.
catalog
Tipo: string
O nome do catálogo padrão para o pipeline, em que todos os conjuntos de dados e metadados do pipeline são publicados. Definir esse valor habilita o Catálogo do Unity para o pipeline.
Se não for definido, o pipeline será publicado no metastore do Hive herdado usando o local especificado em storage.
No modo de publicação herdado, especifica o catálogo que contém o esquema de destino em que todos os conjuntos de dados do pipeline atual são publicados. Confira Esquema LIVE (herdado).
schema
Tipo: string
O nome do esquema padrão para o pipeline, em que todos os conjuntos de dados e metadados para o pipeline são publicados por padrão. Confira Definir o catálogo de destino e o esquema.
target (herdado)
Tipo: string
O nome do esquema de destino em que todos os conjuntos de dados definidos no pipeline atual são publicados.
Definir target em vez de schema configura o pipeline para usar o modo de publicação herdado. Confira Esquema LIVE (herdado).
storage (herdado)
Tipo: string
Um local no DBFS ou no armazenamento em nuvem em que os dados de saída e os metadados necessários para a execução do pipeline são armazenados. As tabelas e os metadados são armazenados em subdiretórios desse local.
Quando a configuração storage não for especificada, o sistema usará como padrão local em dbfs:/pipelines/.
A configuração storage não pode ser alterada depois que um pipeline é criado.
channel
Tipo: string
A versão do runtime do Lakeflow Declarative Pipelines a ser usada. Os valores com suporte são:
  • preview para testar seu pipeline com as próximas alterações na versão de runtime.
  • current para usar a versão de runtime atual.

O campo channel é opcional. O valor padrão é
current. O Databricks recomenda usar a versão atual do runtime para cargas de trabalho de produção.
edition
Digite string
A edição do produto Lakeflow Declarative Pipelines para execução do pipeline. A configuração permite escolher a melhor edição do produto com base nos requisitos do pipeline:
  • CORE para executar cargas de trabalho de ingestão de transmissão.
  • PRO para executar cargas de trabalho de ingestão de streaming e de captura de dados de alterações (CDA).
  • ADVANCED para executar cargas de trabalho de ingestão de streaming, cargas de trabalho CDC e cargas de trabalho que exigem requisitos do Lakeflow Declarative Pipelines para impor restrições de qualidade de dados.

O campo edition é opcional. O valor padrão é
ADVANCED.
photon
Tipo: boolean
Um sinalizador que indica se O que é o Photon? deve ser usado para executar o pipeline. O Photon é o mecanismo Spark de alto desempenho do Azure Databricks. Os pipelines habilitados para ele são cobrados a uma taxa diferente dos pipelines que não se destinam ao Photon.
O campo photon é opcional. O valor padrão é false.
pipelines.maxFlowRetryAttempts
Tipo: int
Se ocorrer uma falha passível de repetição durante uma atualização de pipeline, esse será o número máximo de vezes para tentar novamente executar um fluxo antes que a atualização do pipeline falhe.
Padrão: duas tentativas adicionais. Quando ocorre uma falha recorrente, o runtime do Lakeflow Declarative Pipelines tenta executar o fluxo três vezes, incluindo a tentativa original.
pipelines.numUpdateRetryAttempts
Tipo: int
Se ocorrer uma falha passível de repetição durante uma atualização, este é o número máximo de vezes para tentar novamente a atualização antes que a atualização falhe permanentemente. A repetição é executada como uma atualização completa.
Esse parâmetro se aplica somente a pipelines em execução no modo de produção. Novas tentativas não serão feitas se o pipeline for executado no modo de desenvolvimento ou quando você executar uma atualização Validate.
Padrão:
  • Cinco pipelines disparados.
  • Ilimitado para pipelines contínuos.

Propriedades da tabela Lakeflow Declarative Pipelines

Além das propriedades da tabela com suporte do Delta Lake, você pode definir as propriedades da tabela a seguir.

Propriedades da tabela
pipelines.autoOptimize.zOrderCols
Padrão: Nenhum
Uma cadeia de caracteres opcional que contém uma lista separada por vírgula de nomes de colunas para ordenar essa tabela pela ordem z. Por exemplo, pipelines.autoOptimize.zOrderCols = "year,month"
pipelines.reset.allowed
Padrão: true
Controla se uma atualização completa é permitida nessa tabela.
pipelines.autoOptimize.managed
Padrão: true
Habilita ou desabilita a otimização agendada automática desta tabela.
Para pipelines gerenciados por otimização preditiva, essa propriedade não é usada.

Intervalo de gatilho de pipelines

Você pode especificar um intervalo de gatilho de pipeline para todo o pipeline ou como parte de uma declaração de conjunto de dados. Consulte Definir intervalo de gatilho para pipelines contínuos.

pipelines.trigger.interval
O padrão é baseado no tipo de fluxo:
  • Cinco segundos para consultas de streaming.
  • Um minuto para consultas completas quando todos os dados de entrada são de fontes Delta.
  • Dez minutos para consultas completas quando algumas fontes de dados podem não ser Delta.

O valor é um número mais a unidade de tempo. Estas são as unidades de tempo válidas:
  • second, seconds
  • minute, minutes
  • hour, hours
  • day, days

Você pode usar a unidade no singular ou no plural ao definir o valor, por exemplo:
  • {"pipelines.trigger.interval" : "1 hour"}
  • {"pipelines.trigger.interval" : "10 seconds"}
  • {"pipelines.trigger.interval" : "30 second"}
  • {"pipelines.trigger.interval" : "1 minute"}
  • {"pipelines.trigger.interval" : "10 minutes"}
  • {"pipelines.trigger.interval" : "10 minute"}

Atributos de cluster que não são configuráveis pelo usuário

Como o Lakeflow Declarative Pipelines gerencia ciclos de vida de cluster, muitas configurações de cluster são definidas por Pipelines Declarativos do Lakeflow e não podem ser configuradas manualmente pelos usuários, seja em uma configuração de pipeline ou em uma política de cluster usada por um pipeline. A tabela a seguir lista essas configurações e por que elas não podem ser definidas manualmente.

Campos
cluster_name
O Lakeflow Declarative Pipelines define os nomes dos clusters usados para executar atualizações de pipeline. Esses nomes não podem ser substituídos.
data_security_mode
access_mode
Esses valores são definidos automaticamente pelo sistema.
spark_version
Os clusters do Lakeflow Declarative Pipelines são executados em uma versão personalizada do Databricks Runtime que é atualizada continuamente para incluir os recursos mais recentes. A versão do Spark é agrupada com a versão do Databricks Runtime e não pode ser substituída.
autotermination_minutes
Como o Lakeflow Declarative Pipelines gerencia a lógica de encerramento automático e reutilização do cluster, o tempo de encerramento automático do cluster não pode ser substituído.
runtime_engine
Embora você possa controlar esse campo habilitando o Photon para seu pipeline, não é possível definir esse valor diretamente.
effective_spark_version
Esse valor é definido automaticamente pelo sistema.
cluster_source
Esse campo é definido pelo sistema e é somente leitura.
docker_image
Como o Lakeflow Declarative Pipelines gerencia o ciclo de vida do cluster, você não pode usar um contêiner personalizado com clusters de pipeline.
workload_type
Esse valor é definido pelo sistema e não pode ser substituído.