Quando uma instância não executa conforme o esperado, o Diagnóstico Inteligente identifica a causa raiz — seja uma dependência upstream bloqueada, um horário de agendamento ainda não atingido, capacidade insuficiente no grupo de recursos ou um erro na execução do código.
Como funciona
A execução pontual de uma instância depende de quatro fatores: os horários de agendamento do nó atual e de seus nós ancestrais, a conclusão da execução das instâncias ancestrais e a capacidade restante no grupo de recursos.
O Diagnóstico Inteligente orienta você por esses quatro fatores em sequência na aba Running Details. Cada etapa confirma uma pré-condição para a próxima; portanto, siga-as em ordem.
Estados da instância
No Operation Center, os ícones de status indicam a fase do ciclo de vida da instância e se ela requer atenção.
|
Estado |
Requer ação? |
Descrição |
|
Run Successfully |
Não |
A instância concluiu normalmente. |
|
Not run |
Verificar ancestrais |
A instância não iniciou. Geralmente, está bloqueada por uma dependência upstream. |
|
Failed To Run |
Sim |
A instância executou, mas encontrou um erro. Verifique a etapa Execution. |
|
Running |
Não |
A instância está em execução. |
|
Wait time |
Sim |
A instância está aguardando pelos ancestrais, pelo horário agendado ou por recursos. |
|
Freeze |
Sim |
A instância está congelada. Entre em contato com o proprietário do nó para descongelá-la. |
Para obter detalhes sobre como interpretar os ícones de status, consulte Visualizar dados de log.
Se uma instância ancestral permanecer no estado Running por um tempo anormalmente longo, a causa dependerá do tipo de nó. Para nós que não são de sincronização em lote, verifique os logs de execução para identificar a causa. Em nós de sincronização em lote, a causa provável é contenção de recursos no grupo de recursos ou execução lenta do código. Consulte Como solucionar problemas de longa duração de execução em um nó de sincronização em lote.
Pré-requisitos
Antes de começar, certifique-se de que:
Instâncias acionadas automaticamente foram geradas para os nós. Após confirmar e implantar um nó acionado automaticamente, o DataWorks gera instâncias com base no parâmetro Instance Generation Mode configurado no DataStudio.
Abrir a página de Diagnóstico Inteligente
O Diagnóstico Inteligente está disponível para qualquer instância que não esteja executando conforme o esperado — instâncias de nós acionados automaticamente, instâncias de backfill de dados e instâncias de teste.
Para abrir a página de diagnóstico, localize a instância no Operation Center, clique com o botão direito nela e selecione Instance Diagnose.

Diagnosticar uma instância
Na aba Running Details, o Diagnóstico Inteligente oferece quatro verificações sequenciais e uma etapa opcional de monitoramento.
|
Etapa |
O que verificar |
Onde encontrar |
|
Se todas as dependências upstream foram concluídas |
Etapa Upstream Nodes na aba Running Details |
|
|
Se o horário de agendamento configurado foi atingido |
Etapa Timing Check na aba Running Details |
|
|
Se o grupo de recursos tem capacidade suficiente |
Etapa Resources na aba Running Details |
|
|
Por que a instância falhou durante a execução |
Etapa Execution na aba Running Details |
|
|
Status das regras de monitoramento e baselines |
Abas General, Impact baseline e Historical instance |
Verificar o status das instâncias ancestrais
Um nó só executa após a conclusão bem-sucedida de todos os seus nós ancestrais. Se uma instância ancestral não tiver executado, os dados que ela produz não existirão. Executar a instância atual sem esses dados pode comprometer a qualidade dos dados.
Dois fatores relacionados às instâncias ancestrais afetam o início da instância atual:
Status de conclusão: Todas as instâncias ancestrais devem terminar antes que a instância atual possa iniciar.
Horário de agendamento: A instância atual não pode iniciar antes do horário de início agendado de suas instâncias ancestrais, mesmo que esses ancestrais terminem antecipadamente. Para mais detalhes, consulte Impactos das dependências entre tarefas na execução das tarefas.
Localizar instâncias ancestrais que não executaram
Caso a instância atual esteja no estado Pending (Ancestor) (indicado pelo ícone
), abra o grafo acíclico dirigido (DAG) da instância atual, clique com o botão direito na instância e selecione Instance Diagnose. Na aba Running Details, clique em Upstream Nodes para visualizar quais instâncias ancestrais não foram concluídas.

Por padrão, a análise upstream percorre até seis níveis de instâncias ancestrais. Se nenhum ancestral bloqueador for encontrado nesses seis níveis, clique em Upstream Analysis no DAG para continuar a análise.
Casos especiais:
Nós isolados: Um nó sem nós ancestrais configurados não pode executar conforme o agendamento. Se a instância atual for gerada por um nó isolado, configure os nós ancestrais necessários o mais rápido possível. Para mais detalhes, consulte Nó isolado.
Instâncias ancestrais congeladas: Se uma instância ancestral estiver congelada, a instância atual também ficará bloqueada. Entre em contato com o proprietário do nó ancestral para entender o motivo do congelamento e descongelá-lo o mais breve possível.
Verificar o horário de agendamento
O horário de agendamento configurado no DataStudio representa o tempo de execução esperado de uma instância. A verificação do horário de agendamento é acionada automaticamente assim que todas as instâncias ancestrais da instância atual executarem com sucesso. Isso garante que os dados dos quais a instância atual depende estejam disponíveis.
Ao executar a verificação de tempo manualmente, você encontrará uma das duas situações seguintes:
O horário de agendamento chegou, mas os ancestrais ainda estão em execução: Assim que os ancestrais forem concluídos, a instância iniciará imediatamente, desde que haja recursos de agendamento suficientes.
Os ancestrais foram concluídos, mas o horário de agendamento ainda não chegou: A instância entra no estado Pending (Schedule) e fica aguardando. O ícone
indica esse estado. Verifique a etapa Timing Check na aba Running Details para conferir o horário exato de início agendado.

Verificar o uso de recursos de agendamento
Após a conclusão dos ancestrais e a chegada do horário de agendamento, a instância normalmente inicia a execução. No entanto, se o grupo de recursos de agendamento não tiver capacidade restante suficiente, a instância entra no estado Pending (Resources) e permanece aguardando.
Recursos de agendamento e recursos de computação são distintos. O grupo de recursos de agendamento envia o nó para uma instância do mecanismo de computação, mas não executa o nó diretamente. Mesmo após o envio bem-sucedido do nó, a contenção de recursos do mecanismo de computação pode causar atrasos adicionais. Consulte Visão geral dos grupos de recursos do DataWorks.
Localizar instâncias que estão consumindo recursos
Se uma instância exibir o ícone
, acesse a etapa Resources na aba Running Details. Essa etapa lista as instâncias que estão consumindo recursos no grupo de recursos no momento, permitindo identificar o que está bloqueando a fila.
Causas comuns do estado Pending (Resources)
Caso um nó tenha executado normalmente por muito tempo e, de repente, entre no estado Pending (Resources), verifique os seguintes pontos:
|
Causa |
Ação |
|
Instâncias de longa duração estão retendo recursos sem liberá-los |
Na etapa Resources, identifique as instâncias de longa duração. Visualize seus logs de execução para descobrir por que estão demorando tanto. |
|
Mais instâncias estão competindo pelo mesmo grupo de recursos |
Ajuste a prioridade da instância atual ou mova-a para um grupo de recursos diferente. |
|
Nós Shell ou PyODPS estão consumindo grandes quantidades de memória em um grupo de recursos exclusivo |
Verifique se algum nó Shell ou PyODPS está usando memória excessiva no grupo de recursos. |
O grupo de recursos compartilhado para agendamento é utilizado por todos os locatários. Durante os horários de pico (00:00–09:00), a alta competição por recursos de agendamento pode atrasar a execução. Se o seu nó entrar consistentemente no estado Pending (Resources) durante o pico, migre-o para um grupo de recursos exclusivo para agendamento.
A quantidade de nós que podem executar simultaneamente em um grupo de recursos exclusivo depende de suas especificações. Consulte Grupos de recursos exclusivos para agendamento.
Visualizar os detalhes de execução
Quando todas as pré-condições são atendidas, o DataWorks envia a instância para o mecanismo de computação ou servidor correspondente. Se a instância falhar após o envio, a etapa Execution na aba Running Details exibe os detalhes da falha. Para saber mais sobre como o DataWorks envia instâncias, consulte Visão geral dos grupos de recursos do DataWorks.
Um status Failed To Run (
) geralmente tem três causas comuns:
Falha na execução do código da instância (erros de lógica de sincronização ou processamento de dados).
Os dados da tabela produzidos pela instância violaram regras de monitoramento de qualidade de dados configuradas.
A instância foi congelada.

Nós SQL
Para nós SQL, verifique os dados detalhados de log na etapa Execution. O DataWorks envia nós SQL para instâncias do mecanismo de computação. Se as instruções SQL falharem, consulte a documentação do mecanismo de computação relevante para identificar a causa.
Nós de sincronização
Em nós de sincronização, o sistema de agendamento envia o nó primeiro, mas a sincronização de dados pode ainda não ter iniciado. Verifique os dados de log para confirmar. Consulte Analisar logs de sincronização em lote.
Dois problemas ocorrem frequentemente com nós de sincronização:
WAIT aparece nos logs por um período prolongado
O sistema de agendamento enviou o nó de sincronização, mas o grupo de recursos para Data Integration não tem capacidade suficiente. O nó está aguardando recursos.
Por exemplo, um grupo de recursos exclusivo para Data Integration com 4 vCPUs e 8 GiB de memória suporta até oito threads paralelas. Se três nós de sincronização, cada um configurado com três threads paralelas, forem atribuídos a esse grupo de recursos, e dois nós executarem em paralelo (usando seis threads), restarão apenas duas threads. O terceiro nó entra no estado WAIT até que threads fiquem livres.
Para ver quais instâncias estão executando no grupo de recursos e quanta capacidade cada uma está usando, acesse a aba Data Integration na etapa Execution dentro da aba Running Details.
Cada nó de sincronização ocupa um slot de recurso de agendamento. Se um nó de sincronização ficar travado por muito tempo, ele pode impedir a execução de outros nós.
Se o uso de recursos parecer alto, mas nenhum nó estiver realmente em execução, ou se a contagem de nós não tiver atingido o limite, mas seu nó ainda não conseguir iniciar, entre no grupo DingTalk do DataWorks escaneando o QR code abaixo ou usando o link do aplicativo para contatar o suporte.

O número máximo de threads paralelas para um grupo de recursos exclusivo para Data Integration depende de suas especificações. Consulte Grupos de recursos exclusivos para Data Integration.
Falha na sincronização de dados
Se um nó de sincronização falhar, leia a mensagem de erro e verifique a documentação do plug-in relevante para identificar a causa. Consulte Perguntas frequentes sobre conectividade de rede e operações em grupos de recursos.
Visualizar detalhes de monitoramento
Para instâncias com regras de monitoramento ou baselines configurados, acesse a página de Diagnóstico Inteligente da instância e clique em View Details ao lado da mensagem de aviso na aba Running Details. As abas General, Impact baseline e Historical instance exibem as regras de monitoramento e baselines associados à instância, bem como seus status atuais.
Os detalhes de monitoramento ficam visíveis apenas quando regras de monitoramento foram configuradas. Consulte Visualizar informações de alerta.