Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > BIRT
BIRT Forum d'entraide sur BIRT (Business Intelligence and Reporting Tools). Avant de poster --> FAQ BIRT,Tutoriels BIRT
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/06/2006, 12h38   #1
Membre du Club
 
Inscription : juin 2005
Messages : 269
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 269
Points : 67
Points : 67
Par défaut C'est lent !!

Bonjour,

J'ai crée un dataset, qui a partir d'une requete SQL comprenant une jointure, sort une table de 230.000 lignes.
J'essaye dans mon etat de faire la somme de toutes ces lignes, dans le footer d'un simple tableau, avec la fonction total.count()
Quand je veux prévisualiser le resultat, ca prend un temps infini, il ne s'en sort pas, je suis obligé d'arretter le previsualisation apres 5 minutes alors que BIRT n'a toujours rien affiché.

La requete SQL est certe un peu longue a executer, elle prend environ 10 secondes si je l'execute directement depuis le SGBD (j'ai essayé avec Access et Mysql).

Avez vous deja eu des experiences de lenteur de ce type avec BIRT ?
tatayoyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 17h29   #2
Nouveau Membre du Club
 
Inscription : novembre 2002
Messages : 48
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 48
Points : 33
Points : 33
Pour faire la somme, je vous conseille Total.sum() plus adapté :-P
Sinon, en ce qui concerne la lenteur, j'ai déjà constaté qu'il fallait soit optimisé la requête soit définir dans les options de prévisualisation un nombre de ligne plus restreint (genre 100 lignes, ce qui suffit pour des tests).
BenderJay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 19h20   #3
Membre du Club
 
Inscription : juin 2005
Messages : 269
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 269
Points : 67
Points : 67
Citation:
Envoyé par BenderJay
Pour faire la somme, je vous conseille Total.sum() plus adapté :-P
Sinon, en ce qui concerne la lenteur, j'ai déjà constaté qu'il fallait soit optimisé la requête soit définir dans les options de prévisualisation un nombre de ligne plus restreint (genre 100 lignes, ce qui suffit pour des tests).
je ne veux pas faire la somme, je veux compter et afficher le nombre total d'enregistrements dans mon dataset.

je veux bien modifier les options de previsualisation, mais une fois en prod, le moteur sera obligé de faire tout le calcul, le probleme sera toujours la.
ou bien ?
tatayoyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 19h31   #4
mat.M
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
Citation:
Envoyé par tatayoyo
Bonjour,
Avez vous deja eu des experiences de lenteur de ce type avec BIRT ?

Si c'est en milieu pro mieux vaut prendre des outils qui ont fait leur preuve comme Crystal Report.
Je ne connais pas BIRT mais c'est Open Source , s'appuie sur Java et pas forcément optimisé
Crystal Report c'est la réference

Bon c'est mon point de vue.
Sinon prendre un SGBD qui permet les procédures stockées ; Access ne le permet pas.
SI c'est avec MySQL programmer en natif
  Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 11h32   #5
Membre du Club
 
Inscription : juin 2005
Messages : 269
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 269
Points : 67
Points : 67
c'est pour une application dans un labo de recherche, ca me fait un peu chier de payer une license Crystal, et je ne sais meme pas si crystal se comportera mieux que BIRT.
par curiosité, combien coute une license pour Crystal ?
tatayoyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 11h41   #6
Membre du Club
 
Développeur Java
Inscription : juillet 2004
Messages : 204
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur Java

Informations forums :
Inscription : juillet 2004
Messages : 204
Points : 69
Points : 69
BIRT est très performant,
Seulement tu dois utiliser le rhinoscript pour que cela soit lent.
Perso, je l'utilise avec du Java et il est rapide sur une BD Oracle qui a des centaines de millions de lignes et bien indexée
Qui plus est, BIRT est gratuit, que demander de plus ?
tiboudchou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 11h45   #7
Membre du Club
 
Inscription : juin 2005
Messages : 269
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 269
Points : 67
Points : 67
Citation:
Envoyé par tiboudchou
BIRT est très performant,
Seulement tu dois utiliser le rhinoscript pour que cela soit lent.
Perso, je l'utilise avec du Java et il est rapide sur une BD Oracle qui a des centaines de millions de lignes et bien indexée
Qui plus est, BIRT est gratuit, que demander de plus ?
C'est quoi le rhinoscript ?
tatayoyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 11h57   #8
Futur Membre du Club
 
Avatar de maxscljava
 
Inscription : mai 2006
Messages : 48
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : mai 2006
Messages : 48
Points : 16
Points : 16
Salut,

Je suis assez d'accord avec ce qui ce dit plus bas, en effet avant d'afficher un rapport quelqu'il soit il faut d'abord optimiser la query, je travaille avec BIRT, JAva et DB2 qui gère pour la plus petites table + d'1 million de record et effectivement s'il la query est bonne avec de bons index et bien no problemo, j'obtiens des temps de réponses en dessous des 10 secondes.

Je suggère donc de revoir la query et de la tester individuellement et lorsque le temps de réponse est satisfaisant alors là commencer à générer le report.

Bonne continuation
maxscljava
maxscljava est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 12h03   #9
Membre du Club
 
Inscription : juin 2005
Messages : 269
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 269
Points : 67
Points : 67
Citation:
Envoyé par maxscljava
Salut,

Je suis assez d'accord avec ce qui ce dit plus bas, en effet avant d'afficher un rapport quelqu'il soit il faut d'abord optimiser la query, je travaille avec BIRT, JAva et DB2 qui gère pour la plus petites table + d'1 million de record et effectivement s'il la query est bonne avec de bons index et bien no problemo, j'obtiens des temps de réponses en dessous des 10 secondes.

Je suggère donc de revoir la query et de la tester individuellement et lorsque le temps de réponse est satisfaisant alors là commencer à générer le report.

Bonne continuation
maxscljava
Le temps d'execution de la query est de 8 secondes environ, directement executé depuis le SGBD. c'est pas la mort non plus.
Sous BIRT, l'execution du rapport ne fini jamais. Meme au bout de 5 minutes, alors que je ne demande a afficher que la somme de tous les rows du dataset.

le calcul du dataset et le reste des calculs fait par BIRT sont independants non ? BIRT devrait d'abord calculer le dataset (executer la query) puis faire ses traitement, et c'est sur cette deuxieme partie qu'il a l'air de ramer severement si il y a trop de lignes dans le dataset.

Si je fais la meme query dans mon dataset avec un "limit 100" en plus, il y arrive, si je laisse les 230.000 lignes, il n'y arrive plus.
tatayoyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 13h19   #10
Membre du Club
 
Inscription : juin 2005
Messages : 269
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 269
Points : 67
Points : 67
ma requete etait certes un peu compliquée, j'ai donc créé une nouvelle table qui contient le resultat de ma query.
je n'ai alors qu'a faire un select * from ma_nouvelle_table sous BIRT.
j'ai toujours la meme lenteur.

quelqu'un a deja mis en place des table (groupe) BIRT sur des dataset de plus de 200.000 lignes sans lenteur ?
tatayoyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 18h03   #11
mat.M
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
Citation:
Envoyé par tatayoyo
et je ne sais meme pas si crystal se comportera mieux que BIRT.
par curiosité, combien coute une license pour Crystal ?
Crystal est assez performant j'en ai toujours entendu que du bien en milieu professionnel.
  Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2006, 09h08   #12
Nouveau Membre du Club
 
Inscription : novembre 2002
Messages : 48
Détails du profil
Informations forums :
Inscription : novembre 2002
Messages : 48
Points : 33
Points : 33
Petit conseil :
J'ai déjà eu l'expérience de requêtes assez longues à réaliser (voire qui saturaient la machine virtuelle java). Pour exécuter les requêtes beaucoup plus rapidement et sans plantage : je place mes rapports sur un serveur tomcat (de développement) et j'y exécute les rapports qui s'affichent alors nettement plus vite ! Je n'utilise plus la prévisualisation de BIRT
BenderJay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/07/2006, 18h47   #13
Membre du Club
 
Inscription : juin 2005
Messages : 269
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 269
Points : 67
Points : 67
Pour vous tenir au courant de mes petites histoires :
Suite a une discussion sur mon probleme avec un des gars de BIRT, il m'a conseillé sur leur forum d'ouvrir un fil dédié a mon probleme sur leur liste dediée aux bug de BIRT.

Je test actuellement Crystal XI, pour le meme probleme il s'en sort assez bien.
C'est un peu tout de meme, mais quelques secondes simplement.
tatayoyo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 09h27   #14
BiM
Modératrice
 
Avatar de BiM
 
Femme
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
Inscription : janvier 2005
Messages : 7 299
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 26
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

Informations forums :
Inscription : janvier 2005
Messages : 7 299
Points : 8 650
Points : 8 650
Perso, j'ai testé Crystal Report et il n'ai pas encore bien implémenté pour Java donc finalement j'ai décidé de prendre BIRT. Par contre, la lenteur je la trouve au chargement, avant même que l'état ne fasse quoique ce soit...

Il met à peu près 3 à 5 secondes à démarrer et ensuite il s'éxécute (et là j'attend patiemment )
__________________
__~{@ BiM - Modératrice "Business Intelligence" @}~
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
___________.~{@ Lapine crétine @}~
BiM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 12h07   #15
Membre Expert
 
Avatar de moritan
 
Homme
Développeur Java
Inscription : juin 2005
Messages : 657
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France, Manche (Basse Normandie)

Informations professionnelles :
Activité : Développeur Java

Informations forums :
Inscription : juin 2005
Messages : 657
Points : 1 050
Points : 1 050
Il faut aussi regarder ton environnement pour voir pourquoi c'est lent .
Car si tu lances en preview dans Eclipse c'est un peu normal..
1 c'est ta machine qui travaille donc tu n'as pas forcément de super perf.
2 tu est dans eclipse qui est déjà une appli gourmande.
3 t'as JVM partagé avec eclipse est-elle bien dimensionnée pour suporté un tel volume de donnée?

As-tu fais un test avec un moteur birt hors Eclipse soit en ligne de commande, soit avec lawebbapps sur unserveur tomcat.
Attention à mettre au moins -Xmx=256M sur ton serveur tomcat si tu as de gros rapport.
moritan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 12h14   #16
BiM
Modératrice
 
Avatar de BiM
 
Femme
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
Inscription : janvier 2005
Messages : 7 299
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 26
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

Informations forums :
Inscription : janvier 2005
Messages : 7 299
Points : 8 650
Points : 8 650
Perso, je ne fais que des tests hors Eclipse mais le démarrage est vraiment long..
__________________
__~{@ BiM - Modératrice "Business Intelligence" @}~
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
___________.~{@ Lapine crétine @}~
BiM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 14h35   #17
Membre Expert
 
Avatar de moritan
 
Homme
Développeur Java
Inscription : juin 2005
Messages : 657
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France, Manche (Basse Normandie)

Informations professionnelles :
Activité : Développeur Java

Informations forums :
Inscription : juin 2005
Messages : 657
Points : 1 050
Points : 1 050
Citation:
Envoyé par BiM
Perso, je ne fais que des tests hors Eclipse mais le démarrage est vraiment long..
Le démarrage du moteur BIrt mets entre 10 et 20 s chez moi, c'est pour cela qu'il faut une appli qui lance le moteur une fois et qui le réutilse pour chaque génération car on regagne le temps de démarrage.
Pour cela le mieux et une appli Web.
moritan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 14h49   #18
BiM
Modératrice
 
Avatar de BiM
 
Femme
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
Inscription : janvier 2005
Messages : 7 299
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 26
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

Informations forums :
Inscription : janvier 2005
Messages : 7 299
Points : 8 650
Points : 8 650
Ben j'ai une appli web mais quand tu as plusieurs client, cela ne prend pas de place en mémoire ?

Tu veux dire que tu fais un getInstance() plutôt que de recréer la classe ? (Si c'est le cas appli web ou non, c'est la même histoire lol)
__________________
__~{@ BiM - Modératrice "Business Intelligence" @}~
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
___________.~{@ Lapine crétine @}~
BiM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 15h52   #19
Membre Expert
 
Avatar de moritan
 
Homme
Développeur Java
Inscription : juin 2005
Messages : 657
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France, Manche (Basse Normandie)

Informations professionnelles :
Activité : Développeur Java

Informations forums :
Inscription : juin 2005
Messages : 657
Points : 1 050
Points : 1 050
Citation:
Envoyé par BiM
Ben j'ai une appli web mais quand tu as plusieurs client, cela ne prend pas de place en mémoire ?

Tu veux dire que tu fais un getInstance() plutôt que de recréer la classe ? (Si c'est le cas appli web ou non, c'est la même histoire lol)
non, j'ai mis un seul moteur en singleton au démarage de ma webapps, donc tous mes clients utilise le même moteur Birt.
moritan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 16h08   #20
BiM
Modératrice
 
Avatar de BiM
 
Femme
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
Inscription : janvier 2005
Messages : 7 299
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 26
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

Informations forums :
Inscription : janvier 2005
Messages : 7 299
Points : 8 650
Points : 8 650
Donc nous sommes d'accord lol. Oui c'est vrai que je n'y avais pas pensé Merci !!!
__________________
__~{@ BiM - Modératrice "Business Intelligence" @}~
Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
___________.~{@ Lapine crétine @}~
BiM est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h08.


 
 
 
 
Partenaires

Hébergement Web