Pentaho Data Integration: Como conecta-lo de forma inteligente
Passo a passo de como configurar seu ambiente de conexão
Antes de começarmos gostaria de dar um breve introdução
Pentaho é um software de código aberto criado em 2004 pela Pentaho Corporation para inteligência de negócios (BI). Atualmente é considerado uma das melhores ferramentas de aplicação em Business Intelligence.
Não apenas voltado a ETL mas também pode ser usado para integração de dados.
Módulos do Software:
- Spoon
- Pan
- Kitchen
- Carte
Falaremos agora especificamente sobre o Spoon onde desenhamos nosso processo de ETL e integração através de steps que representam ações que queremos realizar.
Vale Lembrar:
Todos esses módulos precisam ser conectados à um repositório de Metadados tudo o que for feito através da ferramenta precisa estar armazenado em um local externo para ser recuperado.
Isso pode ser feito de três maneiras: dentro de um banco de dados relacional, arquivos externos no disco rígido ou na nuvem.
1. Configurando o JNDI
Precisamos configurar a conexão com o banco de dados com os qual vamos interagir. Basicamente indicar as conexões de origem e destino dos processos de ETL
Para configurar o JNDI precisamos criar um arquivo.txt e adicionarmos algumas propriedade:
nome_do_banco/type=javax.sql.DataSource
nome_do_banco/driver=com.mysql.jdbc.Driver
nome_do_banco/url=jdbc:mysql://localhost:3306/nome_do_banco
nome_do_banco/user=
nome_do_banco/password=
As propriedades em negrito devem ser alteradas de acordo com seus parâmetros. Depois de criado salvaremos esse arquivo.txt dentro do diretório.
C:\Program Files\designer-tools\data-integration\simple-jndi
Caso precisemos configurar outros acessos ao longo do processo de ETL, voltaremos à este arquivo para adicionar mais parâmetros associados à conectividade de bancos de dados externos.
2. Criando repositório Metadados
Abra o Spoon e no canto superior direito clique em Connect.
Vai aparecer uma caixa de diálogo para dar inicio a configuração do repositório onde será armazenado todas as transformações que faremos no Spoon. Clicaremos em Other Repositores.
Escolheremos a opção File Repository:
Aqui vamos configurar o nome e a localização de nosso repositório e para isso precisaremos antes cria-lo.
Vamos criar uma pasta local chamada repositorio
C:\Program Files\Projetos\repositorio
Indicaremos esses parâmetros nos campos abaixo e clicaremos em Finish.
Pronto nosso Spoon está configurado e indicando a pasta onde salvará os arquivos de transformações.
3. Configurando ambiente de integração
Precisaremos criar uma pasta onde adicionaremos os arquivos externos a serem manipulados
Vamos criar um pasta chamada:
C:\Program Files\Projetos\arquivos
Agora vamos acessar o diretório C:\Users\User\.kettle e localizar o arquivo kettle.properties. Abra o arquivo e altere as propriedades em negrito e salve o arquivo.
diretorio=c:\\Program Files\\Projetos\\arquivos\\
banco=driver=nome_do_banco
Note que temos duas variáveis:
‘diretorio’ recebe = c:\\Program Files\\Projetos\\arquivos\\
‘banco’ recebe= nome_do_banco/type=javax.sql.DataSource
nome_do_banco/driver=com.mysql.jdbc.Driver
nome_do_banco/url=jdbc:mysql://localhost:3306/nome_do_banco
nome_do_banco/user=
nome_do_banco/password=
4. Configurando a conexão com o banco
Nesse ultimo passo precisamos criar uma entidade dentro do processo de ETL chamada conexão que vai se conectar ao JNDI.
Para isso vamos clicar com o botão direito em cima de Tranformation e selecionar New.
Vamos clicar na aba View e depois com o botão direito em cima de Database connections e selecionar New.
Nessa etapa vamos preencher algumas informações como:
Connection name: No exemplo defini como Datawarehouse
Connection type: Indicar o banco com o qual está se conectando
Access: Tipo de acesso (Utilizaremos o JNDI, agora tudo faz sentido, não?)
JNDI Name: Podemos apertar Ctrl + barra de espaço e buscarmos a variável ‘Banco’.
Lembra dela?
‘banco’ = nome_do_banco/type=javax.sql.DataSource
nome_do_banco/driver=com.mysql.jdbc.Driver
nome_do_banco/url=jdbc:mysql://localhost:3306/nome_do_banco
nome_do_banco/user=
nome_do_banco/password=
Pronto finalmente finalizamos as etapas de criação de ambiente e configuração e podemos partir para o processo de ETL.