P A T H

Imagine que você possua um arquivo de dados, onde as informações não estão reunidas em uma única linha, mas quebradas em duas ou mais. Isso pode acontecer com arquivos de log, por exemplo. Como selecionar apenas as linhas ímpares deste conjunto e relacioná-las com a linha posterior?

Vamos supor que o arquivo em questão tenha a seguinte estrutura:

 

83.149.9.216  [17/May/2015:10:05:43 +0000]    "GET /kibana-dashboard3.png"
83.149.9.216  [17/May/2015:10:05:43 +0000]    "GET REQUEST OK"
83.149.9.216  [17/May/2015:10:05:07 +0000]    "GET /notes.js"
83.149.9.216  [17/May/2015:10:05:09 +0000]    "GET REQUEST OK"
83.149.9.216  [17/May/2015:10:05:50 +0000]    "GET /kibana-dashboard.png"
83.149.9.216  [17/May/2015:10:05:52 +0000]    "GET REQUEST OK"
83.149.9.216  [17/May/2015:10:05:46 +0000]    "GET /Dreamhost_logo.svg"
83.149.9.216  [17/May/2015:10:05:59 +0000]    "GET REQUEST FAILED"
83.149.9.216  [17/May/2015:10:05:00 +0000]    "GET /redis.png"
83.149.9.216  [17/May/2015:10:05:02 +0000]    "GET REQUEST OK"

 

Podemos perceber que a informação está distribuída em 2 linhas. Na primeira, temos a informação da requisição de um arquivo, e na linha seguinte a resposta do servidor. Esse padrão se repete por todo o arquivo.

Passo 1: Utilize a ferramenta Record ID, para incluir um sequencial no conjunto de dados.

 

Passo 2: Agora, separe as linhas pares das ímpares utilizando a ferramenta Filter, com a seguinte fórmula: Mod([RecordID],2)=1. Neste caso, a fórmula Mod retorna o resto da divisão do Record ID por 2. Se o resultado for 1, o número é ímpar, caso contrário, é par.

 

Passo 3: Para a saída FALSE, onde os números são pares, utilize a ferramenta Formula para alterar o valor do campo Record ID, que terá seu valor reduzido em 1.

 

Passo 4: Por último, utilize a ferramenta Join para relacionar as saídas TRUE e FALSE do Filtro, utilizando o campo Record ID como chave. Aproveite para renomear os campos e selecionar apenas as informações relevantes, conforme mostra a figura abaixo.

 

Passo 5: Acrescente a ferramenta Browse no final do workflow e execute o fluxo. O resultado mostrará a metade das linhas do conjunto de dados original, com mais colunas, relacionando as requisições e respostas no mesmo registro.

Pronto! Agora você já sabe como trabalhar com informações distribuídas em mais de uma linha em um conjunto de dados!

 

Language