Tabela AsyncOperationBase

A tabela AsyncOperationBase é utilizada para armazenar tarefas de sistema. As tarefas de sistema representam extensões assíncronas, como:

  • Workflows e plug-ins assíncronos registados.
  • Operações de fundo, como tarefas de eliminação em massa, importação em massa e operações de rollup.

Para obter uma lista de tipos de operação assíncronos, consulte Escolhas/Opções OperationType.

Quando um evento ocorre e todas as extensões imediatas são executadas, o sistema converte os dados de contexto de quaisquer extensões assíncronas para um formato estruturado que é armazenado num registo AsyncOperation.

Por exemplo, um fluxo de trabalho assíncrono registado pode ser um processo que envia automaticamente um e-mail a um cliente assim que a encomenda é colocada. O fluxo de trabalho segue com outro e-mail quando a encomenda é enviada. Neste fluxo de trabalho assíncrono registado, a plataforma guarda o contexto do fluxo de trabalho assíncrono como um registo na tabela AsyncOperationBase. Um registo de processo WorkflowLog é registado na tabela WorkflowLogBase para manter registos para a execução do fluxo de trabalho.

Estes registos incluiriam informações, tais como:

  • ID do fluxo de trabalho

  • ID do plug-in que aciona o fluxo de trabalho

  • Estado de execução do workflow

Esta tabela inclui todas as colunas de atividade predefinidas, como nome, descrição, tipo, tipo de operação e muito mais.

Para uma lista completa das colunas desta tabela, consulte Referência de tabela/entidade de Tarefa de Sistema (AsyncOperation).

A partir de 2021, a porção de dados de operações assíncronas passou de ser armazenada na capacidade da base de dados do Dataverse para ser armazenada na capacidade de ficheiros do Dataverse. Isto resulta nos dados de operações assíncronas a serem parcialmente atribuídos à capacidade da base de dados do Dataverse e parcialmente à capacidade de ficheiros do Dataverse. Ao mudar para a capacidade de ficheiros do Dataverse, o custo é reduzido, já que a capacidade de ficheiros do Dataverse é cobrada a uma taxa inferior à capacidade de base de dados do Dataverse. Além disso, a capacidade de ficheiros do Dataverse melhora o desempenho global à medida que as consultas relativamente à tabela Operação Assíncrona têm melhor desempenho.

Causas do crescimento

O crescimento da tabela AsyncOperationBase depende diretamente do número de personalizações de que o ambiente do cliente depende. Quanto mais assíncronos, os fluxos de trabalho e os plug-ins resultam no armazenamento de mais registos na tabela AsyncOperationBase para monitorizar a execução destas operações.

Se a sua organização tiver uma utilização intensiva de fluxos de trabalho ou plug-ins, espere que a tabela AsyncOperationBase seja um dos maiores consumidores de capacidade de dados.

Se o tamanho de AsyncOperationBase continuar a crescer ao longo do tempo, verifique se a opção de eliminação automática em registos assíncronos está definida (veja como definir essa opção para fluxos de trabalho e plug-ins no apêndice). Isto resulta na eliminação de todas as tarefas concluídas com êxito assim que forem concluídas e em manter o tamanho da tabela sob verificação.

Alguns fatores comuns que contribuem para o crescimento da tabela AsyncOperationBase no Dynamics 365 incluem:

  • Utilização intensiva de fluxos de trabalho ou fluxos de processo empresarial: se uma organização tiver uma utilização intensiva de fluxos de trabalho ou de fluxos de processo empresarial, a tabela AsyncOperationBase cresce ao longo do tempo e, eventualmente, torna-se grande o suficiente para causar problemas de desempenho.

  • Registos de plug-in assíncronos em entidades grandes: se existirem registos de plug-in assíncronos em entidades grandes, como anexos, a porção de dados de operações assíncronas pode crescer rapidamente, levando a uma tabela AsyncOperationBase grande.

  • Tamanho da porção de dados de operações assíncronas: o tamanho da porção de dados de operações assíncronas também pode contribuir para o crescimento da tabela AsyncOperationBase.

Limpeza da tabela

Primeiro, num ambiente de sandbox, necessita de testar estas ações de eliminação. Para aliviar pressão de capacidade operacional, pode fazer mais sentido aumentar a quantidade de espaço de armazenamento que tem com a sua subscrição do Microsoft Dynamics 365, em vez de reduzir a quantidade de espaço de armazenamento utilizado.

Aviso

Para reduzir o consumo de capacidade da tabela AsyncOperationBase, elimine os metadados personalizados relacionados com tarefas assíncronas. Quando as entidades AsyncOperation são eliminadas, os registos dos ficheiros correspondentes também são eliminados.

Estes registos não estão disponíveis depois da eliminação. Proceda com precaução ao efetuar operações de eliminação em massa.

Antes de eliminar quaisquer dados nesta tabela:

  • Reveja as personalizações nos seus fluxos de trabalho e plug-ins em execução nas operações de eliminação.

  • Reveja os comportamentos de eliminação em cascata para assegurar que nenhum dado é eliminado involuntariamente no processo.

  • Teste estas ações num ambiente de sandbox antes de continuar com a operação de eliminação final.

Todos os ambientes estão configurados com tarefas de eliminação em massa prontas a usar para eliminar tarefas de sistema de fluxo de trabalho concluídas com êxito com mais de 30 dias.

Para reduzir a capacidade adicional associada à tabela AsyncOperationBase, considere configurar tarefas de sistema de fluxo de trabalho com mais de 7 dias para serem eliminadas utilizando tarefas de eliminação em massa.

Consultas de diagnóstico

Utilize Consultas de diagnóstico para ajudar a diagnosticar tarefas com problemas relacionados com AsyncOperationBase.

Utilize as consultas seguintes para diagnosticar problemas relacionados com o armazenamento de ficheiros AsyncOperationBase.

Estado da tarefa de sistema

Para aceder à página Tarefas de Sistema, use os seguintes passos.

  1. Inicie sessão no centro de administração do Power Platform.
  2. No painel de navegação, selecione Gerenciar.
  3. No painel Gerir, selecione Ambientes.
  4. Selecione o seu ambiente.
  5. Selecione Configurações na barra de comandos.
  6. Selecione Auditoria e registos>Tarefas de sistema.

As tarefas de sistema têm o seguinte estado:

  • Concluído - A tarefa já não executa mais nenhuma etapa devido a três possíveis razões de estado:

    • Com sucesso - A tarefa fez o esperado.

    • Falha - Houve uma falha durante o processamento da tarefa.

    • Cancelado - A tarefa não será executada.

  • Em execução - A tarefa está a ser processada ou executada ou uma ação está a decorrer e existem três valores de razão do estado possíveis:

    • Em Progresso - A tarefa está atualmente em execução.

    • Em Pausa - Foi acionada uma operação de pausa.

    • Cancelar - O administrador acionou a opção cancelar.

  • Pendente: - quando a tarefa de sistema não satisfez as condições para ser automaticamente acionada ou ocorreu uma falha ao avaliar as condições. Existem duas razões de estado no cenário pendente:

    • Em espera - Indica que a tarefa de sistema está em estado de espera.

    • A Aguardar por Recursos - Indica que a tarefa de sistema está a aguardar por um recurso.

Nota

As tarefas em execução ou pendentes não devem ser limpas automaticamente. Em vez disso, deve ser acionada uma ação manual para cancelar.

Os clientes podem configurar outras tarefas de eliminação em massa para eliminar registos AsyncOperationBase.

Configurar tarefas de eliminação em massa

Para configurar tarefas deeliminação em massa, consulte as listas seguintes.

Eliminar tarefas de sistema concluídas com mais de sete dias

  1. Inicie sessão no centro de administração do Power Platform.

  2. No painel de navegação, selecione Gerenciar.

  3. No painel Gerir, selecione Ambientes.

  4. Selecione o seu ambiente.

  5. Selecione Configurações na barra de comandos.

  6. Selecione Gestão de dados>Eliminação em massa>Nova.

  7. É apresentado o Assistente de Eliminação em Massa. Selecione Seguinte.

  8. É apresentada a página Definir Critérios de Pesquisa. Para eliminar registo AsyncOperationBase em massa, conclua os seguintes passos:

    1. No campo Procurar por, selecione Tarefas de sistema.

    2. Introduza os seguintes critérios:

      Agrupar Definição Critérios Valores selecionados
      AND Status É igual a Concluída
      AND Concluída Em Com Mais de X Dias 7

      Comece sempre com uma condição restrita que limite os registos eliminados (com mais de 3 anos), depois passe para critérios de eliminação progressivamente mais amplos (com mais de 3 meses) e, em seguida, para critérios de eliminação mais amplos (com mais de 7 dias).
      AND Tipo de Tarefa de Sistema Não É Igual A E-mail em Massa
      Análise de Ficheiros de Importação
      Workflow
  9. Selecione Pré-visualizar Registos para ver os registos que serão eliminados dos critérios de pesquisa especificados para assegurar que nenhum dado é eliminado involuntariamente no processo. Em seguida, selecione Seguinte.

  10. Na página Selecionar Opções, selecione a opção Executar esta tarefa após cada e, em seguida, selecione 7 dias. Em seguida, selecione Seguinte.

  11. Na página Rever e Submeter Detalhes de Eliminação em Massa, selecione Submeter.

Para mais informações sobre como configurar tarefas de eliminação em massa para a tabela AsyncOperationBase, consulte Limpar registos da tabela AsyncOperationBase/WorkflowLogBase.

Eliminar tarefas de sistema concluídas que sejam para fluxos de trabalho

  1. Inicie sessão no centro de administração do Power Platform.

  2. No painel de navegação, selecione Gerenciar.

  3. No painel Gerir, selecione Ambientes.

  4. Selecione o seu ambiente.

  5. Selecione Configurações na barra de comandos.

  6. Selecione Gestão de dados>Eliminação em massa>Nova.

  7. É apresentado o Assistente de Eliminação em Massa. Selecione Seguinte.

  8. É apresentada a página Definir Critérios de Pesquisa. Para eliminar registo AsyncOperationBase em massa, conclua os seguintes passos:

    1. Em Procurar por campo, selecione Tarefas de sistema.

    2. Introduza os seguintes critérios:

      Agrupar Definição Critérios Valores selecionados
      AND Razão do Estado É igual a Com êxito
      AND Status É igual a Concluída
      AND Tipo de Tarefa de Sistema É igual a Workflow
  9. Selecione Pré-visualizar Registos para ver os registos que serão eliminados dos critérios de pesquisa especificados para assegurar que nenhum dado é eliminado involuntariamente no processo. Em seguida, selecione Seguinte.

  10. Na página Selecionar Opções, selecione a opção Executar esta tarefa após cada e, em seguida, selecione 7 dias. Em seguida, selecione Seguinte.

  11. Na página Rever e Submeter Detalhes de Eliminação em Massa, selecione Submeter.

Apêndice

Para saber mais sobre como definir tarefas de fluxo de trabalho e de plug-in, consulte as secções seguintes.

Definir a opção para eliminar tarefas de fluxo de trabalho assíncronas concluídas com êxito

Para fluxos de trabalho assíncronos, recomendamos que selecione a opção Eliminar automaticamente as tarefas de fluxo de trabalho concluídas (para poupar espaço em disco) no editor do fluxo de trabalho. Isto permite que o sistema elimine registos de fluxos de trabalho de execuções bem-sucedidas para poupar espaço.

Definir Retenção de Tarefas de Fluxo de Trabalho para eliminar automaticamente tarefas de fluxo de trabalho concluídas.

Definir a opção para eliminar tarefas de plug-in assíncronas concluídas com êxito

  1. Instalar a CLI do Microsoft Power Platform

  2. Transferir e iniciar a Ferramenta de Registo do Plug-in

  3. Para Plug-ins personalizados, selecione Registar Novo Passo. É apresentado o ecrã Registar Novo Passo.

  4. Conclua os seguintes passos:

    1. Na área Fase do Pipeline do Evento, selecione Pós-Operação.
    2. Na área Modo de Execução, selecione Assíncrono.
    3. Selecione a opção Eliminar AsyncOperation se Código de Estado = Com Sucesso.

Definir Eliminar AsyncOperation se Código de Estado = Com Sucesso

Consulte também