referência de propriedades de dutos
Este artigo fornece uma referência para a especificação de configurações JSON pipeline e propriedades de tabela no pipeline declarativo LakeFlow Spark . Para obter mais detalhes sobre como usar essas várias propriedades e configurações, consulte os seguintes artigos:
Configurações de pipeline
-
idTipo:
stringUm identificador globalmente exclusivo para este pipeline. O identificador é atribuído pelo sistema e não pode ser alterado.
-
nameTipo:
stringUm nome amigável para este pipeline. O nome pode ser usado para identificar o trabalho pipeline na interface do usuário.
-
configurationTipo:
objectUma lista opcional de configurações a serem adicionadas à configuração do Spark do cluster que executa o pipeline. Essas configurações são lidas pelo runtime do Lakeflow Spark Declarative Pipelines e ficam disponíveis para query de pipeline por meio da configuração do Spark.
Os elementos devem ser formatados como pares
key:value. -
parametersTipo:
object
Beta
Este recurso está em Beta. Os administradores do espaço de trabalho podem controlar o acesso a esse recurso na página Pré-visualizações . Consulte Gerenciar prévias do Databricks.
Um mapa opcional de pares key-value que o código-fonte do pipeline pode referenciar usando a sintaxe de parâmetro nomeado (por exemplo, :source_catalog). Utilize parâmetros para reutilizar o mesmo código-fonte do pipeline em diferentes ambientes ou datasets sem editar a fonte.
Chaves podem conter caracteres alfanuméricos, sublinhados (_), hífens (-) e pontos (.). Valores são sempre strings.
Você pode substituir esses padrões ao iniciar uma atualização, em uma tarefa de pipeline em um Job, ou com parâmetros de Job passados adiante. Parâmetros de pipeline só podem ser referenciados do código-fonte SQL. Consulte Uso de parâmetros com pipelines.
-
librariesTipo:
array of objectsUma matriz de arquivos de código contendo o código do pipeline e os artefatos necessários.
-
clustersTipo:
array of objectsUma série de especificações para os clusters executarem o pipeline.
Se isso não for especificado, o pipeline selecionará automaticamente uma configuração cluster default para o pipeline.
-
developmentTipo:
booleanUm sinalizador que indica se o pipeline deve ser executado em Modo
developmentouproduction.O valor default é
false. -
notificationsTipo:
array of objectsUma matriz opcional de especificações para notificações email quando uma atualização pipeline é concluída, falha com um erro que pode ser repetido, falha com um erro que não pode ser repetido ou um fluxo falha.
-
continuousTipo:
booleanUm sinalizador que indica se o pipeline deve ser executado continuamente.
O valor default é
false. -
catalogTipo:
stringO nome do catálogo default para o pipeline, onde todos os conjuntos de dados e metadados do pipeline são publicados. Definir esse valor habilita o Unity Catalog para o pipeline.
Se não for definido, o pipeline será publicado no Hive metastore Hive legado usando o local especificado em
storage.No modo de publicação legado, especifica o catálogo que contém o esquema de destino onde todos os conjuntos de dados do pipeline atual são publicados. Veja o esquema LIVE (legado).
-
schemaTipo:
stringO nome do esquema default para o pipeline, onde todos os conjuntos de dados e metadados para o pipeline são publicados por default. Consulte Definir o catálogo de destino e o esquema.
-
target(legado)Tipo:
stringO nome do esquema de destino onde todos os conjuntos de dados definidos no pipeline atual são publicados.
Definir
targetem vez deschemaconfigura o pipeline para usar o modo de publicação legado. Veja o esquema LIVE (legado). -
storage(legado)Tipo:
stringUm local no DBFS ou armazenamento cloud onde os dados de saída e metadados necessários para a execução pipeline são armazenados. Tabelas e metadados são armazenados em subdiretórios deste local.
Quando a configuração
storagenão for especificada, o sistema usará como default um local emdbfs:/pipelines/.A configuração
storagenão pode ser alterada após a criação de um pipeline. -
channelTipo:
stringA versão do ambiente de execução do pipeline declarativo do LakeFlow Spark a ser utilizada. Os valores suportados são:
previewpara testar seu pipeline com as próximas alterações na versão do runtime.currentpara usar a versão atual do runtime.
O campo
channelé opcional. O valor default écurrent. A Databricks recomenda usar a versão atual do tempo de execução para cargas de trabalho de produção. -
editionTipo
stringEdição do produto do pipeline declarativo LakeFlow Spark para execução do pipeline. Essa configuração permite que você escolha a melhor edição do produto com base nos requisitos do seu pipeline:
COREpara execução transmissão ingerir cargas de trabalho.PROpara execução de transmissão de ingest e captura de dados de alterações (CDC) (CDC) cargas de trabalho.ADVANCEDpara execução de cargas de trabalho de ingestão de transmissões, cargas de trabalho CDC e cargas de trabalho que exigem expectativas para impor restrições de qualidade de dados.
O campo
editioné opcional. O valor default éADVANCED. -
photonTipo:
booleanUm sinalizador que indica se deve ser usado O que é Photon? para executar o pipeline. Photon é o mecanismo Spark de alto desempenho da Databricks. Os pipelines habilitados para Photon são cobrados a uma taxa diferente dos pipelines não habilitados para Photon.
O campo
photoné opcional. O valor default éfalse. -
pipelines.maxFlowRetryAttemptsTipo:
intSe ocorrer uma falha passível de nova tentativa durante uma atualização do pipeline, este é o número máximo de tentativas que um fluxo pode receber antes que a atualização do pipeline seja considerada falha.
Use isso para limitar as tentativas em um único fluxo que seja propenso a falhas que podem ser repetidas, para que ele não interrompa uma atualização inteira.
Padrão: Duas tentativas. Quando ocorre uma falha que permite nova tentativa, o ambiente de execução do pipeline declarativo LakeFlow Spark tenta executar o fluxo três vezes, incluindo a tentativa original.
-
pipelines.numUpdateRetryAttemptsTipo:
intSe ocorrer uma falha que pode ser repetida durante uma atualização, esse será o número máximo de vezes para tentar a atualização novamente antes que ela falhe permanentemente. A nova tentativa é executada como uma atualização completa.
Use isso para limitar as tentativas de atualização, de forma que uma atualização travada falhe permanentemente em vez de tentar novamente indefinidamente.
Este parâmetro aplica-se apenas a pipelines que utilizam comportamento automático de repetição e reinicialização. Não são feitas novas tentativas para execução de atualizações ad-hoc a partir do editor ou quando você executa uma atualização
Validate.padrão:
- Cinco para pipeline acionado.
- Ilimitado para pipeline contínuo.
Propriedades da tabela de pipeline
Além das propriedades de tabela suportadas pelo Delta Lake, você pode definir as seguintes propriedades de tabela.
-
pipelines.autoOptimize.zOrderColspadrão: Nenhum
Uma strings opcional contendo uma lista separada por vírgulas de nomes de coluna para esta tabela em Z-order. Por exemplo,
pipelines.autoOptimize.zOrderCols = "year,month"O Databricks recomenda clusters líquidos em vez de Z-ordering para otimizar a disposição de dados em tabelas pipeline. Para permitir que a Databricks selecione e mantenha as colunas de clustering automaticamente, use
CLUSTER BY AUTO(cluster_by_auto=Trueem Python). Consulte Usar clusters líquidos para tabelas. -
pipelines.reset.allowedpadrão:
trueControla se uma refresh completa é permitida para esta tabela.
-
pipelines.autoOptimize.managedpadrão:
trueHabilita ou desabilita a otimização agendada automaticamente desta tabela.
Para gerenciamento de pipeline por otimização preditiva, esta propriedade não é usada.
intervalo de disparo do pipeline
Você pode especificar um intervalo de acionamento pipeline para todo o pipeline ou como parte de uma declaração de dataset . Consulte Definir intervalo de disparo para pipeline contínuo.
-
pipelines.trigger.intervalO default é baseado no tipo de fluxo:
- Cinco segundos para consultas de transmissão.
- 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. As seguintes são as unidades de tempo válidas:
second,secondsminute,minuteshour,hoursday,days
Você pode usar a unidade singular ou 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 podem ser definidos pelo usuário
Como o pipeline declarativo Spark (SDP) LakeFlow gerencia os ciclos de vida cluster , muitas configurações cluster são definidas pelo sistema e não podem ser configuradas manualmente pelos usuários, seja em uma configuração pipeline ou em uma política de cluster usada por um pipeline. A tabela a seguir lista essas configurações e explica por que elas não podem ser definidas manualmente.
-
cluster_nameO SDP define os nomes dos clusters usados para executar atualizações pipeline . Esses nomes não podem ser alterados.
-
data_security_modeaccess_modeEsses valores são definidos automaticamente pelo sistema.
-
spark_versionO SDP executa clusters em uma versão personalizada do Databricks Runtime , que é continuamente atualizada para incluir os recursos mais recentes. A versão do Spark está incluída na versão do Databricks Runtime e não pode ser substituída.
-
autotermination_minutesComo o SDP gerencia a lógica de encerramento automático e reutilização cluster , o tempo de encerramento automático cluster não pode ser alterado.
-
runtime_engineEmbora você possa controlar esse campo habilitando o Photon para seu pipeline, não é possível definir esse valor diretamente.
-
effective_spark_versionEste valor é definido automaticamente pelo sistema.
-
cluster_sourceEste campo é definido pelo sistema e é somente leitura.
-
docker_imageComo o SDP gerencia o ciclo de vida cluster , você não pode usar um contêiner personalizado com clusters pipeline .
-
workload_typeEste valor é definido pelo sistema e não pode ser substituído.