|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Membre régulier
![]() Inscription : janvier 2007 Messages : 349 ![]() |
Bonjour tout le monde,
Je cherche le moyen d'optimiser une méthode qui prend beaucoup de temps. cette methode consigne dans trois tables des données d'un objet Erreur voici la méthode : Code :
Code :
Aussi si je devrais revoir mes tables, la façon dont elles sont construites. Sinon je sais que je ne suis pas dans le forum approprié mais ca m'aidera aussi : pensez vous que l'algorythme ( JAVA ) est correct ? Est il possible de faire plus concis et rapide ? Merci
__________________
.-*K.E.U.B*-.
|
||||
|
|
00
|
|
|
#2 |
|
Membre régulier
![]() Inscription : janvier 2007 Messages : 349 ![]() |
Je précise que je travaille sur DB2...
__________________
.-*K.E.U.B*-.
|
|
|
00
|
|
|
#3 |
|
Expert Confirmé Sénior
![]() ![]() ![]() Spécialiste en bases de données Inscription : septembre 2006 Messages : 2 887 ![]() |
Bonjour,
Pour la partie strictement DB2 : Où sont passées les clés primaires ? Où sont les index ? Avez-vous exécutés les Réorganisations ? Les Runstats ? Les Rebind à suivre ? Avez-vous analysé les Explain ? Quelles sont les volumétries ? Avez-vous vérifié dans le catalogue que les espaces physiques sont taillés de façon pertinente ? S’agit-il de DB2 pour z/OS ou autre ? Etc. Si vous avez des problèmes de performance, vous devez être à même de déterminer si c’est la partie SQL qui est en cause et/ou les programmes qui hébergent les requêtes. Les requêtes doivent donc être testées hors programme et si vous avez des outils de mesure, n’hésitez pas à en vous en servir.
__________________
_ Faites simple, mais pas plus simple ! (A. Einstein) E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire ») => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale ») __________________ Bases de données relationnelles et normalisation : de la première à la sixième forme normale (Bonne lecture !) |
|
|
00
|
|
|
#4 |
|
Membre expérimenté
![]() Inscription : septembre 2007 Messages : 609 ![]() |
Au niveau du code java il est déjà bien préférable d'utiliser :
- prepareStatement : mais cela risque de modifier ton code. - des batchUpdate : dans le cas ou tu boucle sur les insertions (avec bien sur des prepareStatement) Tu peux également regarder du cote de sqlj (si tu es sur DB2) pour en pas faire de sql dynamique (mais personnellement j'aime pas beaucoup sqlj) |
|
|
00
|
|
|
#5 | |||
|
Membre régulier
![]() Inscription : janvier 2007 Messages : 349 ![]() |
Citation:
en ce qui concerne les clés primaires, leur utilisation m'a été déconseillée par un administrateur ... allez savoir pourquoi ... les index sont les premieres colonnes de chaque table Code :
trop technique a mon goût Je pense que les partie SQL/Programme ont toutes les deux besoin d'être optimisées ... Je m'explique : j'ai fait cette méthodes avec des connaissances de base, il y a surement des objets qui correspondent mieux ( je pense à preparedstatement au quel je vais jeter un oeil ... ). De plus la base de données que j'utilise est assez solicitée ... Merci de vos réponses en tout cas je vais regarder ca en ce beau lundi matin
__________________
.-*K.E.U.B*-.
|
|||
|
|
00
|
|
|
#6 | ||||
|
Membre expérimenté
![]() Inscription : septembre 2007 Messages : 609 ![]() |
exemple prepareStatement
Code :
Code :
|
||||
|
|
00
|
|
|
#7 | |||
|
Expert Confirmé Sénior
![]() ![]() ![]() Spécialiste en bases de données Inscription : septembre 2006 Messages : 2 887 ![]() |
Citation:
En attendant, vos tables ne sont pas des ensembles, mais des sacs : l’algèbre relationnelle ne s’applique pas. L’intégrité référentielle n’est pas contrôlée. Vous vous servez de votre SGBDR comme d’un SGBD non R. Le contenu de la base de données n’est peut-être pas très beau à voir. Citation:
Citation:
A défaut, la base de données ne peut être qu’une brouette alors qu’elle pourrait être une Ferrari...
__________________
_ Faites simple, mais pas plus simple ! (A. Einstein) E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire ») => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale ») __________________ Bases de données relationnelles et normalisation : de la première à la sixième forme normale (Bonne lecture !) |
|||
|
|
00
|
|
|
#8 |
![]() ![]() |
Je ne suis pas spécialiste Java mais je vois que tes requêtes sont effectuée dans une méthode Execute2. Peux-tu fournir la méthode car en définitive, c'est-elle qui accède à la DB ? Ne fais-tu pas un open dans cette méthode par exemple ?
|
|
00
|
|
|
#9 |
|
Membre habitué
![]() Inscription : septembre 2004 Messages : 123 ![]() |
Bonjour,
Quelques articles pour un javaman : http://www.ibm.com/developerworks/db...lio/index.html http://www.ibm.com/developerworks/db...04pooloth.html Attention si tu es sur DB2 z/OS au coût d'une DGTT. Alex. |
|
|
00
|
|
|
#10 |
|
Membre habitué
![]() Inscription : septembre 2004 Messages : 123 ![]() |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com