quinta-feira, 23 de julho de 2015

Step Set Variables e Step Get Variables – Exemplos Kettle

Este Post tem como objetivo apresentar a utilização dos steps Set e Get Variables, quais são utilizados para setar um valor em uma variável(parâmetro), e o Get para buscar o valor da variável e ou parâmetro para ser utilizada em um SQL por exemplo,  vamos apresentar um exemplo a seguir.

1º Inserir os Steps: Input Table, Select Values e Set Variables em uma transformação e ligar os hops;
Table input temos uma select qual resulta a data de hoje(atual) que precisa ser guardada para ser utilizada em um passo seguinte:

3º No Select Values precisamos informar os dados nas abas “Select & Alter” e “Meta-Data”:


4º No Set Variables informamos os campos: Field name, Variable name, Variable scope type:

5º Criamos o próximo passo onde vamos usar a variável(Parametro) criado, então criamos uma nova transformação e inserimos os steps: get variables, input table, e output table.
6º No Get Variable definimos a variável(parâmetro) que vamos buscar, no exemplo data_hoje, então definimos os campos: name, variable(sem vai ser ${nomedaviavel}, tipo, formato, conforme imagem abaixo:

7º No step input table podemos usar a variável que buscamos com o get, no nosso caso ${dia_hoje}, para isso precisamos:

*Marcar o checkboxReplace variables in script”;
*selecionar o step Get Variable que no nosso caso é “Get Data de Hoje” no seletor “Insert data from step”;
* no comando SQL podemos simplesmente adiciona “?” ou podemos especificar a variável assim ‘’’${nomedavariavel}’’’, conforme exemplo:

8º Para finalizar o output table grava o resultado da consulta sql na tabela de destino(conforme padrão).
A rotina poderia ficar em um Job dessa forma:

Onde primeiro efetuamos em uma transformação o Set da variável e depois em outra transformação através do get buscamos o valor e usamos.



4 comentários:

  1. Boa tarde, sou meio novato ainda no Pentaho e estou precisando de ajuda...

    Tenho uma transformação pronta, e nela utilizo o Excel Input, para a construção da transformação eu utilizei apenas um arquivo excel, porém, essas planilhas são atualizadas todos os meses... tenho uma pasta chamada Base onde todas as planilhas excel estão localizadas, gostaria de saber se há como eu setar alguma variavel no Job mesmo, antes de executar a transformação, que lesse o nome dessas planilhas, e gravassem os dados de cada uma...

    Obrigado.

    ResponderExcluir
  2. olá Eder Tonello, meu nome é Ivan de Oliveira Holanda, sou de Fortaleza-CE, mexo com dados,usando várias tecnologias:(Desenolvedor Python,criação de modelos de ML, usando técnicas Estatística de:ávores de decisão,regressão linear, regressão logistica, métodos preditivos com sereis temporais etc),estou com uma demanda de Kettle PDI, para criar filtros de datas nas queries, queria tirar umas dúvidas com você? Meu email:iivanholanda@gmail.com e meu WhatsApp: 85 98931-0383, aguardo se retorno.

    ResponderExcluir