21 Julho 2017

Ferramentas e Aplicações de Alteryx Designer

O Alteryx Designer é um programa que permite construir um workflow de uma forma simples, utilizando e configurando um vasto conjunto de ferramentas “drag-and-drop”. É útil para proceder a análise de dados “self-service” – através da preparação, combinação e análise de diferentes fontes de informação – e facilmente partilhar os resultados obtidos.

Abaixo encontra-se uma descrição das ferramentas mais utilizadas no Alteryx Designer e categorias de ferramentas em geral. Também descrevemos o desenvolvimento de aplicações analíticas em Alteryx e como é possível executar um workflow através da linha de comandos e mesmo utilizando parâmetros.

Breve descrição das ferramentas mais usadas em Alteryx

O nosso objetivo é fazer uma breve introdução às ferramentas mais usadas no Alteryx. O conjunto de ferramentas apresentadas são as mais básicas através das quais podemos começar a desenhar o nosso workflow. Na tabela abaixo é possível encontrar uma descrição das ferramentas de cada conjunto de ferramentas. Relembramos que ao clicar no símbolo de uma ferramenta no Alteryx Designer irá obter uma explicação e em alguns casos exemplos.

 

 

 

 

 

 

Os restantes conjuntos de ferramentas são mais específicos por isso vamos dar uma breve explicação de cada conjunto:

> In-Database - categoria de ferramentas que nos permitir combinar e analisar grandes volumes de dados sem ser necessário mover a informação para fora da base de dados. Permite obter aumentos de performance significativos em relação a ferramentas semelhantes de Alteryx que não são In-database, ou seja, que requerem que a informação seja movida para fora da base de dados para poder ser processada.

> Reporting - categoria que inclui ferramentas que ajudam a fazer apresentação e organização dos dados.

> Spatial - categoria que oferece um vasto leque de ferramentas de manipulação de informação espacial, processamento e de edição de objetos.

> Interface - categoria que inclui ferramentas que são usadas para executar aplicações e macros (posteriormente temos um exemplo detalhado)

> Data Investigation - categoria que contém ferramentas para perceber melhor a informação a ser usada num projeto de análise preditiva e ferramentas para obter amostras para estas análises.

> Predictive - categoria que inclui ferramentas para a generalidade dos modelos preditivos quer de classificação quer de regressão assim como ferramentas para comparação de modelos e teste de hipóteses relevantes para os modelos preditivos.

> Predictive Grouping - categoria que contém ferramentas para agrupar registos ou campos num menor número de grupos

> AB Testing - ferramentas que permitem efetuar testes A/B, tal como examinar o efeito de uma nova campanha de comunicação de marketing nas vendas.

> Time Series - categoria que contém ferramentas de forecasting e univariate time series plotting

> Prescriptive - categoria que inclui ferramentas que podem ajudar a determinar a melhor ação ou resultado para uma situação particular ou conjunto de cenários. Pode ajudar a aumentar o output dos modelos preditivos ao determinar uma ação ótima.

> Connectors - categoria de ferramentas usadas para obter informação ou levar informação para a cloud ou internet.

> Demographic Analysis - estas ferramentas permitem obter informação usando o Allocate Engine dentro do Altery. Requere licença.

> Behaviour Analysis - ferramentas que permitem obter informação usando o Solocast Engine dentro do Alteryx.

> Calgary - categoria desenhada para efetuar análises em bases de dados com milhões de registos.

> Developer - categoria que inclui ferramentas especializadas especificas para Macros e aplicações analíticas, assim como para executar programas externos.

Nota: A descrição destas categorias foi adaptada daqui.

Um exemplo de um workflow simples:

 

Aplicações analíticas em Alteryx

O Alteryx Designer apresenta um conjunto de ferramentas que permitem o desenvolvimento de aplicações analíticas (ficheiros.yxwz), que podem ser publicadas no Alteryx Server e deste modo partilhadas entre os membros de uma empresa. Isto permite a estes utilizadores executar um workflow de Alteryx – previamente desenvolvido como aplicação analítica – de uma forma mais dinâmica e sem ter de configurar objetos diretamente no Alteryx Designer.

Para construir uma aplicação analítica são utilizados objetos do tipo “Interface” em conjunto com os restantes objetos utilizados num workflow normal. Os objetos do tipo “Interface” permitem adicionar funções como escolher um ficheiro de input ou escolher um valor de um conjunto de valores numa lista “drop down”, por exemplo. Na imagem abaixo estão apresentados todos os objetos do tipo “interface”.

 

Um objeto “Action” é sempre adicionado entre um dos objetos do tipo Interface e outro objeto ao qual esse se ligue, pois é através do “Action” que é configurada a ação a executar de um objeto sobre o outro. Podemos por exemplo definir como ação “Update Value”, entre um objeto “Drop Down” onde está definida uma lista de valores, e um objeto “Filter”, onde estamos a filtrar um campo para um valor específico. Deste modo passamos a escolher através da “drop down” qual o valor para o qual estamos a filtrar esse mesmo campo.

 

O Interface Designer (menu View > Interface Designer) permite customizar e organizar uma aplicação analítica, configurando o nome dos campos ou a ordem pela qual aparecem, entre outras coisas.

 

 

É possível aprender a construir uma aplicação analítica através de um dos tutoriais do Alteryx Designer, no menu Help > Sample Workflows > Tutorials > Build an App. Também é possível ver exemplos de aplicações em Help > Sample Workflows > Analytic Apps.

Para executar um workflow como aplicação analítica basta carregar no ícone “Run as Analytic App” (varinha mágica). Ao carregar no botão “Run Workflow” normalmente, o workflow será executado sem ter em conta os objetos de interface e ações adicionadas.

 

Ao executar uma aplicação analítica uma nova janela aparece com as opções correspondentes aos objetos de Interface adicionados, e de acordo com o que foi customizado através do Interface Designer.

Correr um workflow com base em parâmetros através da linha de comandos (Windows)

É possível fornecer um parâmetro a um workflow de Alteryx e correr o mesmo sequencialmente para parâmetros diferentes utilizando um batch file. Por exemplo, se queremos correr o mesmo workflow para diversos ficheiros de input, não será necessário correr manualmente o workflow mudando de cada vez o ficheiro de entrada.

Para tal, é necessário transformar o workflow em “Analytic App”. Para isso basta arrastar qualquer objeto do tipo “Interface” e o workflow é automaticamente convertido.

 

No caso de querermos correr o workflow várias vezes para diferentes ficheiros de input, além do objeto “Input Data”, deveremos colocar também o objeto do tipo Interface “File Browse”. Ao unir os dois, um objeto “Action” é automaticamente adicionado. No objeto “Action” deve escolher-se a opção “Update Value” e depois escolher como valor a atualizar o caminho para o ficheiro. Desta forma, conseguimos fazer update do ficheiro que estamos a ler quando corremos a aplicação analítica e escolhemos um novo ficheiro através do “File Browse”. No caso de termos mais do que um ficheiro de input que queremos utilizar como parâmetro, deverá ser feito o mesmo para os vários objetos “Input Data”.

 

É possível também mudar o nome do objeto “file browse” clicando no mesmo e depois em “Annotation”. Isto pode ser útil mais tarde ao definir os ficheiros que queremos utilizar como parâmetros, especialmente se o workflow tiver vários “File Browse”.

 

Em seguida, para criar o batch file que permite correr o workflow via linha de comandos, precisamos do código XML que permite que este update do caminho do ficheiro ocorra. Para tal, é necessário ir ao Interface Designer (menu “View”, selecionar “Interface Designer”) > Test View > View.

 

Irá aparecer uma nova janela que mostra o código XML que é possível copiar e colar num editor de texto.

 

 

No editor de texto é possível editar o código XML de modo a incluir o nome do ficheiro de input que queremos usar. Ou seja, onde se lê na imagem acima passamos a incluir o nome do ficheiro, ficando do seguinte modo:

"C:\Users\apolica\Box Sync\Transf_pc_JNJ\BL alteryx bypass\SALES_sem_strive_QA_03042017.yxwzpath_do_ficheiro"

É então possível correr este código XML através da linha de comandos do Alteryx (AlteryxEngineCmd.exe), sendo o workflow executado utilizando o(s) ficheiro(s) de input definidos. Se pretendermos correr o workflow muitas vezes com diferentes ficheiros de input, podemos automatizar ainda mais o processo, criando um batch file que corre o código XML através da linha de comandos do Alteryx tantas vezes quanto desejarmos, com os diferentes parâmetros que pretendermos. Basta para tal guardar o ficheiro no editor de texto com extensão “.bat”.

Exemplo de uma linha de um batch file:

C:\Users\apolica\AppData\Local\Alteryx\bin\AlteryxEngineCmd.exe "C:\Users\apolica\Box Sync\Transf_pc_JNJ\BL alteryx bypass\SALES_sem_strive_QA_03042017.yxwzG2N_FILES\201601_PT_004600_SALES.txt"

Para executar o batch file basta correr o mesmo pela linha de comandos do Windows, e todas as linhas do ficheiro são executadas sequencialmente.

 

 

 

 

Adriana Policarpo

 

 

 

Paulo Gonçalves

Blog