Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A maioria das atividades de pipeline no Data Factory suporta novas tentativas automáticas. Quando uma atividade falha devido a um erro transitório (uma API sujeita a limitação de taxa, uma breve interrupção de serviço ou uma dependência instável), pode configurá‑la para repetir automaticamente um determinado número de vezes antes de assinalar a atividade como falhada.
Também pode controlar quanto tempo a atividade espera entre tentativas, definir o número de retentativas e esperar individualmente por cada atividade, para ajustar o comportamento das retentativas com precisão em todo o seu fluxo de trabalho.
Configurar as definições de retentativa numa atividade
Para configurar o comportamento de retentativa para uma atividade:
Selecione a atividade na área de desenho do pipeline.
No separador Geral do painel de propriedades, selecione a caixa Ativar tentativas para ativar a funcionalidade de tentativas.
Defina o campo Retry para o número de novas tentativas. Introduza um valor entre 1 e 1000. O valor padrão é 1.
Em Tipo de intervalo de repetição, selecione Fixo ou Atraso crescente para controlar como o tempo de espera entre tentativas é calculado. Depois define os campos de intervalo para o tipo escolhido. Consulte intervalos de repetição para mais informações.
Opcionalmente, configure as condições de repetição (pré-visualização) para controlar quando devem ocorrer repetições com base em critérios de erro específicos.
Intervalos entre tentativas
O intervalo de repetição controla durante quanto tempo uma atividade espera entre tentativas. Utilize "Fixed" para falhas curtas e previsíveis. Utilize o atraso progressivo para interrupções mais longas. Implementa um retardo exponencial, em que o tempo de espera aumenta a cada tentativa, dando aos serviços a montante progressivamente mais tempo para recuperarem.
A definição do tipo de intervalo de nova tentativa controla qual a abordagem a utilizar.
| Tipo | Comportamento |
|---|---|
| Fixo (predefinição) | Espera o mesmo número de segundos entre cada tentativa. |
| Atraso Crescente | Utiliza atraso exponencial: entre tentativas, é aguardado um intervalo aleatório dentro de um intervalo de valores que cresce exponencialmente, até um máximo configurável. |
Fixo
Ao selecionar Fixo, a atividade espera o mesmo número de segundos entre cada nova tentativa. Use este tipo quando as falhas forem breves e previsíveis.
Defina o intervalo de nova tentativa (seg) para o número de segundos de espera. O padrão é 30 segundos.
Atraso crescente
Quando seleciona a opção Atraso Crescente, o tempo de espera aumenta exponencialmente entre cada tentativa, num método conhecido como recuo exponencial. Este padrão dá aos serviços a montante progressivamente mais tempo para recuperar, reduz a carga repetida em sistemas em dificuldades e permite que os oleodutos se recuperem sozinhos de cortes mais longos sem intervenção manual.
O mecanismo de repetição seleciona um intervalo aleatório de um intervalo que cresce exponencialmente antes de cada tentativa:
| Retry | Alcance mínimo | Alcance máximo |
|---|---|---|
| 1 | max(0, intervalo mínimo) | min(intervalo, intervalo máximo) |
| 2 | max(intervalo, intervalo mínimo) | min(2 × intervalo, intervalo máximo) |
| 3 | max( intervalo de 2 ×, intervalo mínimo) | min(4 × intervalo, intervalo máximo) |
| 4 | max( intervalo de 4 ×, intervalo mínimo) | min(8 × intervalo, intervalo máximo) |
| … | … | … |
O intervalo duplica a cada tentativa até que o limite superior atinja o intervalo máximo entre tentativas, após o que todas as restantes tentativas aguardam esse valor máximo. A seleção aleatória dentro de cada intervalo reduz a probabilidade de novas tentativas simultâneas do pipeline entrarem em conflito no mesmo sistema upstream ao mesmo tempo.
Estão disponíveis dois campos quando está selecionado Atraso crescente:
| Campo | Description | Predefinido |
|---|---|---|
| Intervalo de tentativa (seg) | O intervalo inicial. Define o valor base do intervalo de recuo. | 30 segundos |
| Intervalo máximo de repetição (seg) | O limite superior do intervalo de espera. As novas tentativas nunca excedem este valor. | 3600 segundos |
Note
Os campos de intervalo de tentativa não suportam expressões dinâmicas. Os valores devem ser inteiros estáticos.
Configurar condições de repetição (versão preliminar)
Por predefinição, uma atividade é repetida em caso de qualquer falha. Utilize condições de repetição para especificar que erros originam uma repetição. Esta abordagem ajuda-o a evitar desperdiçar tentativas em erros que não se resolvem, como falhas de autenticação.
Para adicionar uma condição de nova tentativa:
- Na secção Condições de repetição (pré-visualização), selecione o botão + para adicionar uma nova linha de condição.
- Escolha um campo para avaliar:
- Mensagem de erro: O conteúdo de texto da mensagem de erro.
- Tipo de falha: A categoria de falha, como erro do utilizador ou erro do sistema.
- Código de erro: O código de erro específico devolvido, como 429 para limitação de taxa.
- Selecione um Operador para definir o tipo de correspondência, como Contém.
- Introduza um Valor com que comparar.
- Use a coluna E/Ou para combinar várias condições. Selecione E para exigir que todas as condições correspondam, ou Ou para tentar novamente quando alguma condição corresponder.
Por exemplo, para repetir apenas em erros de limitação de taxa, adicione uma condição com Campo definido como Error code, Operador definido como Contains, e Valor definido como 429.
Importante
O intervalo de tentativa ocorre antes de a condição ser avaliada. Por exemplo, se definir um intervalo entre tentativas de 1 hora e a condição de nova tentativa não se verificar, o pipeline ainda aguarda a hora inteira antes de avançar para a atividade seguinte ou terminar a execução do pipeline.
Tip
Quando não especifica as condições de repetição, a atividade é repetida em caso de qualquer falha. Adiciona condições para ser mais seletivo relativamente aos erros que originam novas tentativas.
Limitações conhecidas das novas tentativas
- Suporte da atividade: São suportadas novas tentativas condicionais para tipos específicos de atividade, incluindo as atividades Cópia de dados, Notebook, Fluxo de dados e Procedimento armazenado.
- Propriedades de erro: As condições de repetição podem corresponder ao código de erro, à mensagem de erro e ao tipo de falha. Nem todos os campos de erro específicos do conector estão disponíveis para correspondência.
Conteúdo relacionado
- Visão geral da atividade
- Create your first pipeline (Criar o primeiro pipeline)