Java batch para ETL de Data Warehouse

Alguém tem experiência em implementar um processo de ETL em Java batch?

Qual o volume e o desempenho apresentado?

Obrigado.

Att,
Gustavo Veloso.

kra trabalho com DW e nunk ouvi falar nessa ferramenta, vc tah iniciando em DW agora?

vc jah viu as soluções da japsersoft e da pentaho, tbém são gratuitas, estão crescendo no mercado e parecem que tem desempenho bom

nunk trabalhei com as mesmas, mais aqui no forum tem pessoas que trabalham com pentaho

vlws

Na realidade a forma como eu escrevi ficou parecendo um nome de ferramenta mesmo, mas o batch é de: programas que executam sem interação humana.

No cenário que eu estou vivendo atualmente, o cliente quer que eu implemente os processos de ETL em Java em vez de PL/SQL. Na minha visão, nós teremos uma grande perda de performance, mas eu gostaria de trocar uma idéia com alguém que já tenha passado por essa “mesma” situação e, dessa forma, obter as lições aprendidas.

Agradeço o retorno.

Alguém já passou por essa situação?

Att,
Gustavo Veloso.

kra nunk passei por isso, mais jah fiz algo parecido, soh que não para DW, tinhamos quem migrar um sistema para java, o sistema antigo armazenava tudo em arquivos de .txt, dai criei uma rotina que fizese a leitura dos arquivos e gravassem no banco. tinha um pouco mais de 20 mil arquivos por pasta, foi feito todo um tratamento para que os dados forem gravados nas tabelas certas, tinhamos que migrar tudo, a performance não foi levando em conta, pois soh iamos fazer aquele processo uma vez. Mais o tempo gasto para leitura dos arquivos e persistencia no banco, simplesmente era absurdo comparado se fosse feito tudo no banco. Se nosso cliente fosse usar oracle com certeza eu iria fazer tudo em PL/SQL e ganhar umas horas a menos de espera. Mais era mysql, não sabia como tratar os arquivos em mysql e entao resolvi fazer em java

tinha os processos

leitura do arquivo
limpeza do arquivo
gravação em uma tabela no banco

o tempo gasto não era legal para quem precisa fazer isso todos os dias, no caso de um DW

te aconselho a convercer o seu cliente a usar PL/SQL mesmo, o ganho irá ser incrivel, como ele já tem o oracle não teria problemas. No oracle mesmo vc pode criar os jobs de atualização automatica das tabelas. E de uma forma bem simples por sinal. Agora se ele insistir com a ideia do ETL em java, pergunte a ele quantas vezes por dia será necessario executar o batch? coisas assim, vc ia tah diminuindo não so a sua performance de DW, mais tbém dos sistemas transacionais, pois ia estar fazendo a leitura neles, e jogando para outro banco.

espero ter ajudado

vlws

Obrigado.