Java x OLTP

8 respostas
Luca

Olá

Gostaria de saber a opinião de quem trabalha com Java em ambiente OLTP

  1. Tipo da aplicação?

  2. Qual banco de dados usa?

  3. O que usa de Java?

  • EJBs? somente servlets?
  • JDBC? JTA/XA e/ou JTS?
  • Hibernate? Outro semelhante?
  • Usa algum framework?
  • Usa JMS (ou MDBs)?
  • Algum Transaction Manager como Arjuna ou Transactions da Atomikos?
  1. Qual volume das transações por dia?

  2. Como migram os dados para um data warehouse? Usam alguma feature particular do SGBD?

  3. Seria esperto usar um banco free como Postgresql como OLTP e um MySQL no datawarehouse? Ou seria necessário um Oracle ou DB2?

Um dos meus problemas: convencer um diretor que Java se presta para OLTP.

[]s
Luca

8 Respostas

Daniel_Quirino_Olive
Se você considerar um sistema de checkin de aeroporto um OLTP, eis os dados:

:arrow: Oracle 9i;

:arrow: um framework esquisito, resultado de um fork do Struts;

:arrow: JMS, JTA, mas nada de EJBs;

:arrow: sem noção da quantidade de transações, mas beira os milhões;

:arrow: sem resposta para migração de DW;

:arrow: talvez usar um banco de dados como MySQL, que é estupidamente rápido para armazenar dados (OLTP), mas retardadamente ruim para fazer relacionamentos, seja uma boa. Por que não? Faça uns testes, oras!
Luca

Olá

Na raça? Não usam nada pronto que os ajudem nisto?

Na verdade pensei em usar só o Postgresql tanto para OLTP como para DW. Não sei porque sugeri usar MySQL no DW. Talvez não seja apropriado para DW. Como vc sugeriu parece fazer mais sentido.

[]s
Luca

Daniel_Quirino_Olive

Usar MySQL como OLTP se explica facilmente: MySQL, principalmente quando se usa MyISAM, é um banco muito rápido. Mas que não possui nenhum tipo de gerenciamento de constraints. Para um banco de dados cuja aplicação é apenas recolher dados (OLTP), MySQL é pra lá de válido. No entanto, para aplicações de inteligência de negócios e DW, talvez seja mais interessante migrar os dados do MySQL para algo mais, digamos, decente, como Oracle, DB2, Sybase ou SQLServer.
Sim, JTA é usado na unha em alguns poucos casos isolados. Mas ainda assim é usado (medo!).

louds

Atual projeto:

:arrow: Banco Oracle na baixa plataforma e trocentos na alta.
:arrow: plataforma java proprietaria com JDBC e connector proprietario com mainframe.
:arrow: Geladeiras medonhas com CICS.
:arrow: Por volta de 5 milhões de clientes (dados de 2001).
:arrow: A parte OLAP usa os mesmos SGDBs da OLTP ate onde eu sei.

Usar um banco free? Seria possivel e uma boa alternativa para dados não críticos que não precisam de interoperabilidade com legal.

J

Já ouvi dizer que o DW do IG é em MySQL.
Pelo DW ser uma estrutura de dados não mutável o MySQL parece suprir.
O java possui uma API para OLAP (JOLAP).
(Não sei a diferença de OLTP, se puderem me explicar)

Mas tem uma bela frase que diz o seguinte:
“Se você tem um milhão de registros use MySQL ou PostGre numa boa.
Agora se você tem um registro de um milhão de dólares use ORACLE.”

louds

Besteira isso. Hoje em dia 99% dos problemas dos SGDBs são culpa de administradores e DBAs pouco qualificados.

Luca

Olá

OLAPxOLTP

Não sei quantificar mas incluou também o fato de que muitas vezes por diver$o$ motivo$, os programadores assumem parte desta incompetência. Hoje em dia os SGDBs estão complexos demais para deixar toda a concepção do sistema na mão de arquiteto/programador não especialista em BD, por melhor que ele seja. E atividades como backup, migração DW ou extração de relatórios direto da base as vezes matam um projeto.

Não tenho vivência em um ambiente decente com um DBA esperto com capacidade de palpitar logo na definição da arquitetura. E é exatamente de um cara assim que sinto falta pois o nosso projeto ainda não tem verba para contrata-lo.

[]s
Luca

louds

Já trabalhei em um projeto com um DBE (engenheiro de banco, cuidava do projeto e instalação, mas dava manutenção) e foi tranquilo, tinhamos algumas stored procedures e ele deu uns pitacos a respeito delas que fizeram diferença. Porêm se ele não fosse um recurso permanente do cliente, não seria justificavel.

Criado 27 de abril de 2005
Ultima resposta 27 de abr. de 2005
Respostas 8
Participantes 4