Compreender o fluxo de controle do Data Factory

Concluído

O que é fluxo de controle

O fluxo de controlo é uma orquestração de atividades de pipeline que inclui o encadeamento de atividades em sequência, ramificação, definição de parâmetros ao nível do pipeline e passagem de argumentos ao invocar o pipeline sob demanda ou a partir de um disparador.

O fluxo de controlo pode também incluir contentores em loop que podem passar informação para cada iteração do container em loop.

Se um loop For Each for usado como uma atividade de fluxo de controle, o Azure Data Factory poderá iniciar várias atividades em paralelo usando essa abordagem. Isso permite que você crie uma lógica de processamento complexa e iterativa dentro dos pipelines criados com o Azure Data Factory, que dá suporte à criação de diversos padrões de integração de dados, como a criação de um data warehouse moderno.

Algumas das atividades comuns de fluxo de controle são descritas nas seções abaixo.

Encadeamento de atividades

No Azure Data Factory, você pode encadear atividades em uma sequência dentro de um pipeline. É possível usar a propriedade dependsOn numa definição de atividade para a encadear com uma atividade a montante.

Ramificar atividades

Use o Azure Data Factory para ramificar atividades dentro de um pipeline. Um exemplo de atividade de ramificação é a atividade If Condition , que é semelhante a uma instrução if fornecida em linguagens de programação. Uma atividade de ramificação avalia um conjunto de atividades e, quando a condição é avaliada como verdadeira, um conjunto de atividades é executado. Quando ele é avaliado como falso, então um conjunto alternativo de atividades é executado.

Para situações em que precisas de mais do que dois caminhos de resultado, usa a atividade Switch . A atividade Switch funciona como uma instrução switch/case em linguagens de programação: avalia uma expressão e executa as atividades que correspondem a um valor de caso específico. Podes definir até 25 casos nomeados mais um branch padrão que se executa quando nenhum caso coincide. Utilize a Condição If para decisões binárias verdadeiro/falso e o Switch quando tiver múltiplos resultados discretos.

Parâmetros

Pode definir parâmetros ao nível da canalização e passar argumentos ao invocar a canalização a pedido ou através de um trigger. As atividades consomem os argumentos contidos em um parâmetro enquanto são passados para o pipeline.

Transmissão de estado personalizado

A passagem de estado personalizada é possível com o Azure Data Factory. A passagem de estado personalizado é uma atividade que criou a saída ou o estado da atividade que precisa ser consumida por uma atividade subsequente no pipeline. Um exemplo é que, em uma definição JSON de uma atividade, você pode acessar a saída da atividade anterior. Utilizar a transmissão de estado personalizada permite-lhe criar processos de trabalho onde os valores são passados pelas atividades.

Contentores de ciclo

O conjunto de contentores de repetição do fluxo de controle, tais como a atividade ForEach, define a repetição em pipeline. Ele permite que você itere em uma coleção e execute atividades especificadas no loop definido. Funciona de forma semelhante à estrutura 'para cada' de repetição usada em linguagens de programação. Além de cada atividade, também há uma atividade Até. Esta funcionalidade é semelhante a um loop do-until usado na programação. O que faz é executar um conjunto de atividades (fazer) num ciclo até que a condição se verifique.

Fluxos baseados em acionadores

Os pipelines podem ser acionados sob demanda (baseado em eventos, por exemplo, postagem de blob) ou por tempo de relógio.

Ativar uma canalização a partir de outra canalização

A atividade Execute Pipeline com o Azure Data Factory permite que um pipeline do Data Factory invoque outro pipeline.

Fluxos delta

Os casos de uso relacionados ao uso de fluxos delta são cargas delta. As cargas delta em padrões ETL só carregarão dados que foram alterados desde uma iteração anterior de um pipeline. Recursos como atividades de consulta e agendamento flexível ajudam a lidar com trabalhos de carga delta. No caso de usar uma atividade de lookup, ela lerá ou consultará um valor de nome de um registo ou de uma tabela a partir de qualquer fonte externa. Este resultado pode ser ainda referenciado por atividades subsequentes.

Outros fluxos de controlo

Há muito mais atividades de fluxo de controle. Veja os seguintes itens para outras atividades úteis:

  • Atividade da Web: a atividade da Web no Azure Data Factory usando fluxos de controle pode chamar um RESTendpoint personalizado de um pipeline do Data Factory. Conjuntos de dados e serviços vinculados podem ser passados para serem consumidos pela atividade.

  • Obter atividade de metadados: a atividade Obter metadados recupera os metadados de quaisquer dados no Azure Data Factory.