IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

DB2 Discussion :

Optimiser Mon Code


Sujet :

DB2

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2012
    Messages : 42
    Points : 60
    Points
    60
    Par défaut Optimiser Mon Code
    Bonjour
    Je dois améliorer un script en tenant compte des problèmes de performance
    Mes modification créent un problème de performance puisque dans la table external_id_equip_map
    j'ai beaucoup de données à traiter ce qui crée une lenteur dans l’exécution de la procédure.
    Je cherche un moyen pour contourner ce problème
    En rouge vous trouverez les modifications que j'ai apporté.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    INSERT INTO SCHEMA_BOADM.tbowrk_INF228_int_fae_dm
      SELECT TPJCT.code_transaction_brut                               as trans_type,
             TW232.code_bu                                             as BU,
             SUM(TW232.montant_net)                                    as total_amount,
             SUM(TW232.montant_brut)                             	   as montant_brut,
             SUM(-TW232.montant_remise)                                 as total_remise,
    		 SUM(-TW232.montant_forfait)                                as montant_forfait,
             TW232.mkt_code                                            as mkt_code,
    		 TW232.code_contrat                                        as code_contrat,
             TW232.is_roaming_out                            		   as is_roaming_out,
    		 EIEM.external_id                                          as IDS
      FROM   SCHEMA_BOADM.tbowrk_INF232_cdr_fae TW232, 
             SCHEMA_BOADM.TBO_PARAM_JUR_CODE_TRANSAC TPJCT,
    		 SCHEMA_ARBOR.external_id_equip_map EIEM


    Merci d'avance

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 138
    Points : 266
    Points
    266
    Par défaut
    Bonjour,

    Peux tu indiquer les critères de jointures du select ?
    (j'espère qu'il y en a, en cas de produit cartésien, je ne pense pas qu'il y ait de solution pour améliorer les perfs)

    En général, le plus simple pour améliorer les performances est de créer des index sur les critères de jointures ou de faire les jointures sur les index existant (le cluster étant à privilégier dans le cas de recherche de données)

  3. #3
    Membre chevronné Avatar de bernard59139
    Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2006
    Messages
    950
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Octobre 2006
    Messages : 950
    Points : 2 064
    Points
    2 064
    Par défaut
    Et avant de créer des index, c'est de vérifier si il y a possibilité de les utiliser.

    C'est une évidence que bcp oublie (vécu..).

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2012
    Messages : 42
    Points : 60
    Points
    60
    Par défaut
    Effectivement il y a un index mais il n'est pas bien utilisé (en gros il ne me sert pas)
    Est ce qu'il y a moyen de créer un deuxième index ?
    Avez vous une autre solution ?

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 138
    Points : 266
    Points
    266
    Par défaut
    Si ce n'est pas fait régulièrement, un petit triple R ne peut pas faire d mal : Reorg, Runstats, Rebind.

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2012
    Messages : 42
    Points : 60
    Points
    60
    Par défaut
    Merci Pico
    Je ne connais pas le principe des trois R
    Je vais voir sur internet comment ça marche

  7. #7
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2005
    Messages
    1 473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 473
    Points : 3 283
    Points
    3 283
    Par défaut
    Mais quel DB2 ?

    ( DB2 for z/OS, DB2 for i, DB2 for LUW )

  8. #8
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2012
    Messages : 42
    Points : 60
    Points
    60
    Par défaut
    C'est DB2 for LUW

Discussions similaires

  1. PreparedStatment : conseils pour optimiser mon code
    Par Monkey_D.Luffy dans le forum JDBC
    Réponses: 8
    Dernier message: 30/05/2008, 14h49
  2. optimiser mon code avec une boucle for?
    Par Invité dans le forum ActionScript 3
    Réponses: 1
    Dernier message: 16/11/2007, 09h33
  3. Réponses: 5
    Dernier message: 23/05/2007, 11h25
  4. OPTIMISER mon code
    Par valoji dans le forum Bases de données
    Réponses: 3
    Dernier message: 14/03/2006, 19h45
  5. Optimiser mon code ASP/HTML
    Par ahage4x4 dans le forum ASP
    Réponses: 7
    Dernier message: 30/05/2005, 11h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo