tutorial_transformacao1.2

Propaganda
TRANSFORMAÇÃO A PARTIR DE DOIS BANCOS UTILIZANDO O
SPOON(KETTLE)
NÉLI JOSÉ DA FONSECA JÚNIOR
Ferramentas Utilizadas:
 PostgresSQL 8.3
 Pentaho Data Integration 4.2.0 RC-1
 Java Runtime Environment 1.6.0
Este tutorial mostra como fazer uma transformação no Spoon, a partir de dois bancos de
dados. No caso iremos usar uma tabela no PostGIS e outra numa planilha do Microsoft Excel.
Primeiro contendo informações sobre loteamentos na cidade de Ouro Preto. Já a planilha é uma
tabela de lookup contendo a inscrição cadastral e o nome de cada proprietário dos lotes. Vamos
mostrar uma extração de dados a partir de duas fontes, uma pequena transformação, tendo como
chave de comparação a inscrição cadastral e por último uma atualização no banco de dados. Segue
abaixo o modelo das duas tabelas utilizadas:
tema_sede_lotes (PostGIS)
proprietarios_lookup(Excel)
1 - Para iniciar, abra o Spoon e crie uma nova transformação:
2 – Abra a categoria Input e adicione os steps Excel Input e Table input. Em seguida,
expanda a categoria Lookup e adicione o step Stream lookup. Da categoria Output, adicione o step
Update. Por fim, crie os hop’s para conectar os steps, de acordo com a figura abaixo.
3 – Edite o step Excel input com os seguintes parâmetros:




Aba Files:
 File or Directory: Localize o arquivo de lookup com o botão navegar. Em seguida clique
em Add para adicionar o arquivo ao grid. Para ter certeza que o arquivo foi localizado
clique no botão Show Filename.
Aba Sheets:
 Clique no botão Get Sheetname e escolha a planilha desejada. Se o nome da planilha não
aparecer na lista, reveja os parâmetros da aba Files.
Aba Content:
 Certifique-se que o campo Header esteja marcado.
 Escolha o encondig correto em que o arquivo foi escrito. Geralmente é UTF-8 ou ISO8859-1.
Aba Fields:
 Clique no botão Get Fields From Header Now e veja todos os campos disponíveis no
arquivo.
 De uma olhada nos dados que serão extraídos do arquivo, clicando no botão Preview
Rows. Clique em OK e salve a transformação.
4 – Edite o step Table Input com os seguintes parâmetros:



No campo Connection, clique em New e adicione uma conexão com o banco de dados de
sua escolha. No caso eu usei o PostGIS.
Clique em Get Sql Statement... e selecione a tabela que deseja utilizar. Se prefererir você
pode escrever uma consulta utilizando SELECT...FROM...WHERE para selecionar as
tabelas e campos desejados.
Novamente de uma olhada nos dados que serão extraídos do arquivo, clicando no botão
Preview. Clique em OK e salve a transformação.
5 – Antes de editar o step Stream Lookup, dê uma olhada no fluxo de registro de entradas. Clique
com o botão direito em cima do step e vá em Mostrar Campos de Entrada. Deverá ser exibido
todos os campos que você selecionou proveniente das duas fontes.
6 – Edite o Stream Lookup com os seguintes parâmetros:


Lookup Step: Escolha a tabela de lookup, no caso será a tabela do Microsoft Excel.
Clique nos botões Get fields e Get lookup fields. As grades de campos deverão ter a
configuração da figura abaixo.


Na grade de cima você deverá deixar apenas as chaves usadas para realizar a transformação.
No caso em Field deixarei apenas inscricao_cadastral e em LookupField ficará
INSC_CADASTRAL.
Na grade de baixo você selecionará o campo que fornecerá os dados, no caso é o
PROPRIETARIO2. É bom também adicionar um novo nome na coluna ao lado para que ele
não seja alterado. As grades deverão ter a configuração abaixo:
7 – Vamos agora editar o último step, Update:





Como você já adicionou uma conexão no step Table Input, é provavel que a conexão já
esteja adicionada no Update, mas assim mesmo é bom verificar.
No campo Target Table clique em Browse e selecione a tabela utilizada.
Na grade de cima clique em Get Fields e remova todos, com exceção do campo que será
utilizado como chave para a transformação. No caso é o inscricao_cadastral.
Na grade de baixo em Table Field selecione o campo que receberá os dados provenientes da
transformação, no caso é o campo proprietario. Em Stream Field você selecionará o campo
que irá fornecer os dados, caso você tenha modificado o nome na step Stream Lookup, será o
novo nome que você utilizará, no caso é o prop.
As grades deverão ter a configuração abaixo:
8 – Por fim, salve a transformação e a execute. Atualize seu banco e veja o resultado gerado.
Download