Marcelo não quero mudar tua forma de pensar. Mas
vou mostrar a minha de forma mais suscinta.
Agora apresento os dados de 2 testes entre muitos que realizei com o
Birt:
Já fiz relatórios com 250.000 linhas de
resultado com 1250 páginas em um projeto de RH. Demorou 11 segundos para
renderizar na tela web.
Fiz testes no Jmeter que suportou até 250
usuários satisfatóriamente, realizando diversas consultas ao mesmo tempo,durante
10 minutos, com 1 Gb de memória instanciada no tomcat.
Também já desenvolvi visões de BI com o
BIRT. Rápido e fácil.
Se conseguir fazer
isso com o Jasper me avisa, pois em meus testes o Jasper é muito bom, mas
consome muita memória.
Dicas para uso melhor da
ferramenta:
Use cache. Independente da tua ferramenta
para relatórios. Jcache é excelente e extremamente fácil de configurar (pelo
menos com o Birt).
Deixe seu sistema escalável. Uma grande
problema de desempenho de aplicações vem da execução de queries. Se tiver
problemas de escabilidade separe em servidores distintos os relatórios de teu
sistema de produção.
Dica para utilização de relatórios
mais eficientemente:
- Traga totais, dados sumarizados. Grande
parte de gerentes e administradores querem ter uma visão mais genérica. Permita
que desses totais possam ser trazidos dados com granularidade mais baixa.
Crie um link caso o cliente queira ter um relatório completo. Muitas vezes
chamando um pdf resolve esse caso mais específico.
E em resposta aos seus
questionamentos:
1 – Lento, não tem paginação simples nos testes...
Acredito que tu não
configurou a memória virtual do teu eclipse ou do teu RCP Designer. Paginação
simples? não entendi. Tem paginação e tu pode limitar a quantidade de
dados que traz o relatório.
2 – Integração difícil? Já integrei inclusive com o
Android e Iphone. Integrar dentro da sua aplicação? altere o web.xml da sua
aplicação de acordo com as configurações solicitadas pelo birt. Chame o servlet
run caso não queira trabalhar com frames. No código java é só chamar o
BirtContext muito similar ao uso do FacesContext no JSF.
3 – gráficos complexos? Faço gráficos
extremamente complexos, que renderizam inclusive no android e Iphone, pois
possibilita renderizar gráficos em SVG.
4 - formatação de tabelas via css? Tenho diversos templates,
todos formatados com css, inclusive a ferramenta te possibilita isso. Ver
documentação.
5 - Programar em _javascript_ muitas coisas.? Isso
é opcional. Tu pode criar classes javas extendendo o framework para o que tu
precisa adicionalmente.
6 -Não segue os padrões de programação para
_javascript_? Uso tudo o que quero com o Jquery. Inclusive a integração com o
Android foi toda feita com Jquery Mobile.
7 – Travar porque tem muitos resultados? Ou tu
não fez as consultas paginadas realmente (implementação própria) ou tu não
aumentou a memória da tua aplicação. Já fiz relatórios com 250.000
linhas de resultado com 1250 páginas em projeto de RH. Demorou 11 segundos para
renderizar na tela. Fiz testes no Jmeter com até 250 usuários realizando
consultas ao mesmo tempo com 1 Gb de memória instanciada no tomcat.
O mais interessante da ferramenta é sua rapidez
no desenvolvimento. Possibilita pensarmos de modo diferente como trazer
informação aos nossos clientes.
Quer mais. Entre no site do http://www.eclipse.org/birt/phoenix/,
vá em examples e faça o download dos rptdesign (arquivos XML) que contem os
relatórios do Birt baseados na base de dados exemplo que já vem com o RCP Design
ou RunTime. Tem também 4 excelentes livros, 3 de criação para criação de
relatórios e gráficos com mais de 400 páginas cada um, e outro ensinando como
estender o BIRT via código java.
Sent: Wednesday, May 18, 2011 9:22 AM
Subject: Re: [javasf] Relatórios com java
Lento,
não tem paginação simples nos testes...
Integração com sistema...
difícil...
Se for coisa simples... select totalClintes... dos meses que
foram cadastrados isso é fácil em qualquer ferramenta....
Agora quando for
consultas complexas... grandes volumes de dados...
Geração de gráficos
complexos... formatação de tabelas via css...
ou algo a
mais...
Programar em _javascript_ muitas coisas... uma programação diferentes
de todas...
Não segue os padrões de programação para _javascript_... e se
precisar fazer algo mais
difícil não vai conseguir fugir disso.
Ai
estão alguns dos argumentos dentre outros que agora nem lembro... até mesmo erro
da ferramenta ... como por exemplo - Salvar as alterações somente em
UM estado da aplicação
-.
Se travar porque tem muitos resultados... que falei "grandes volumes
de dados" e não tiver salvo a consulta, esquece a consulta complexa que você
tinha elaborada, - lembre-se
UM - vai ter que fazer
novamente...
Não vou fazer mais nenhuma colocação, vocês podem tirar suas
conclusões por ai...
acredito eu...
Até mais Alecindro, tenha um Bom
dia...
--
Você recebeu esta mensagem por que é membro do Javasf
http://groups.google.com/group/javasf Conheça
também o Java Brazil:
http://groups.google.com/group/thejavabrazil