Recentemente, alguns dos clientes que tenho trabalhado estão num processo de upgrade das suas versões de Server para versões mais recentes onde lhes permite tirar proveito das mais recentes inovações que a Alteryx introduziu na sua plataforma. O motor AMP foi inicialmente apresentado na versão 20.2 do Designer mas apenas mais recentemente na versão 22.1 passou a fazer parte da configuração padrão para todos os novos fluxos de trabalho.
Alguns dos clientes que recentemente colaborei apenas possuem fluxos de trabalho em motor E1 que lhes permite ter mais fluxos em execução, mas por vezes a performance não é a mais desejada devido a quantidade de registros desses mesmos fluxos.
Este artigo, irá esclarecer algumas dúvidas relativamente a como melhorar a performance dos seus fluxos de trabalho fazendo um trabalho de balanceamento entre os motores E1 e AMP e definir quais os cenários ideais por forma a utilizarmos de forma eficiente o hardware disponível.
AMP significa Processamento Multithread. Como está implícito no seu nome, permite o processamento de vários pacotes em paralelo. Comparado com o E1 Engine que processa dados por registro-a-registro em sequência.
Um exemplo do que foi aqui descrito pode ser visualizado na imagem seguinte:
Como apresentado, AMP processa os dados de forma paralela independentemente do tipo de informação que contenha ao contrário de E1 que executa de forma sequencial. Ambos E1 e AMP podem ser usados simultaneamente e configurados nas definições do Servidor (Server).
Apesar de atualmente a configuração padrão ser AMP, recomendamos que as Execuções em AMP apenas sejam utilizadas em ambientes com um mínimo de 8 cores e recomendamos o seu uso de forma gradual especialmente em ambientes que usam versões anteriores a 22.1. AMP na maioria das vezes é mais rápido que o motor E1 apesar de haver algumas exceções que irei destacar mais para frente no artigo.
Mas então qual o pré-requisito principal a ter em consideração para a utilização de AMP? O mecanismo AMP deve ter pelo menos 400 MB para processar um thread de um fluxo de trabalho. Por exemplo, com 8 threads, deve haver pelo menos 3,2 GB de memória disponível para AMP em tempo de execução. Se houver apenas 2,5 GB disponíveis em tempo de execução, o AMP usará 6 threads para satisfazer o mínimo de 400 MB.
Outro ponto que devemos considerar ao fazer a migrações gradual de fluxos de E1 para AMP tem a ver com as configurações do servidor (Server).
Caso o servidor não tenha habilitado o motor AMP o administrador do seu sistema terá que abrir as definições do servidor e na opção de controller fazer a modificação como presente na seguinte imagem:
Se você ativar o mecanismo AMP para o controller, também precisará definir pelo menos 1 Worker para executar o mecanismo AMP na tela Configurações do sistema > Engine (Mecanismo).
A configuração em Configurações do sistema > Engine (Mecanismo) informa ao worker quais mecanismos ele pode usar e, portanto, quais fluxos de trabalho ele pode executar.
Por exemplo, vamos pegar um ambiente de 3 nós. O nó 1 está configurado para o controlador e a Galeria e tem AMP habilitado. O nó 2 é um nó somente de trabalho com o mecanismo definido como Somente Original. O nó 3 é um nó somente de trabalho com seu mecanismo definido como Ambos. Nesse cenário, a execução de fluxos de trabalho AMP no servidor está habilitada e esses fluxos de trabalho seriam executados apenas no nó 3. Os fluxos de trabalho do mecanismo original seriam executados no nó 2 ou no nó 3. Se o nó 3 estivesse offline, os fluxos de trabalho do mecanismo original ainda seriam executados no nó 2, mas os fluxos de trabalho de AMP ficariam presos na fila até que o nó 3 voltasse a ficar online.
Se você selecionar apenas AMP Engine ou ambos, também deverá selecionar habilitar AMP Engine no nível do ambiente (Alteryx Designer).
Do lado do Alteryx Designer como mencionado a partir do 22.1 AMP será escolhido como Default, para remover essa opção tem 2 possibilidades:
No Fluxo Definições do Usuário
Geralmente 4 perguntas devem ser feitas no início da construção de um fluxo:
A diferença de performance pode ser verificada na seguinte imagem onde executamos o mesmo fluxo em E1 e AMP em 3 diferentes máquinas com uma performance garantidamente melhor em AMP:
Para mais informações relativamente a esta analise, consultem o seguinte Link: https://community.alteryx.com/t5/Analytics/AMP-Engine-Discover-the-Untapped-Performance-of-Your-Anal...
Apesar de a recomendação ser o uso de AMP de forma estandardizada com um bom planeamento e documentação de boas práticas qualquer usuário de negócios em parceria com TI tem a flexibilidade de escolher qual motor lhe proporcionará mais benefícios e melhor performance reduzindo o tempo de execução dos seus fluxos. Para mais informações relativamente ao que foi apresentado aqui sugiro o seguinte link: https://help.alteryx.com/current/designer/alteryx-engine
Você deve ser um usuário registrado para adicionar um comentário aqui. Se você já estiver registrado, faça logon. Se você ainda não estiver registrado, registre-se e faça logon.