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

SQL Oracle Discussion :

Lenteur d'une requete -> 20 mn à 10H00


Sujet :

SQL Oracle

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 55
    Points : 30
    Points
    30
    Par défaut Lenteur d'une requete -> 20 mn à 10H00
    Bonjour,

    Nous rencontrons une lenteur sur un select.

    Cette requete peut mettre 20 min comme 10h... Pourtant, aucune manipulation est faite.

    Voici cette fameuse requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    select distinct200906as MAAAA, cty_des, count(distinct soc_code) as Nbre
    from td_societe soc, td_contrat c, ts_ct_type ct, td_souscripteur so
    where soc.soc_id = c.soc_id
    and so.soc_id=soc.soc_id
    and c.cty_id=ct.CTY_ID
    and avoirpackage.F_PARTS_SAL_CT(so.so_id,c.ct_id,to_date('30062009','ddmmyyyy'))>0
    group by cty_des
    Je ne sais pas ce que je peux faire pour identifier le problème... Peut etre les index ?

    Merci de votre aide.

  2. #2
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut
    Si la requête est vraiment identique caractère pour caractère alors il faut examiner la fonction du package en question.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ...
    AND avoirpackage.F_PARTS_SAL_CT(so.so_id,c.ct_id,to_date('30062009','ddmmyyyy'))>0
    ...
    Dans toutes les cases faire une trace SQL étendue permet de comprendre les différences dans les temps d’exécution.

  3. #3
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

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

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    il te faut tenter un tkprof pour voir où le temps est dépensé et les différences, le plus douloureux dans ta requête c'est sûrement :

    avoirpackage.F_PARTS_SAL_CT

    PS: j'aurais dû faire un refresh de mon browser avant de poster, désolé mnitu

  4. #4
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut
    Citation Envoyé par laurentschneider Voir le message
    ...
    PS: j'aurais dû faire un refresh de mon browser avant de poster, désolé mnitu
    Il n’y pas de quoi. Mais, ces dernieres jours je suis devenu plutôt un fan des outils comme tvdxtat que de tkprof.

  5. #5
    Membre éprouvé Avatar de 13thFloor
    Homme Profil pro
    DBA Oracle freelance
    Inscrit en
    Janvier 2005
    Messages
    670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France

    Informations professionnelles :
    Activité : DBA Oracle freelance

    Informations forums :
    Inscription : Janvier 2005
    Messages : 670
    Points : 945
    Points
    945
    Par défaut
    Question bebête : il s'agit bien de tables et non pas de vues (où il y aurait des dblinks par exemple) ?
    Il y a t-il des opérations particulières pendant les 10 h de traitement : sauvegarde, calcul de statistiques, un apprenti dba qui joue à mettre les index unusable ... ?

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 55
    Points : 30
    Points
    30
    Par défaut
    Bonjour et merci de vos réponses.

    J'ai pu identifier le problème -> Les statistiques !

    J'ai passé les stats sur les tables et ca prend maintenant 14 mn !

    Merci à vous.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 04/02/2009, 19h09
  2. Probleme de lenteur dans une requete
    Par blin.dom@wanadoo.fr dans le forum Langage SQL
    Réponses: 1
    Dernier message: 25/01/2008, 19h59
  3. pb lenteur execution d'une requete !
    Par fusurf dans le forum Général Dotnet
    Réponses: 13
    Dernier message: 05/06/2007, 14h12
  4. [MySQL v4.1.9] Lenteur d'une requête SQL
    Par Ithomir dans le forum Langage SQL
    Réponses: 9
    Dernier message: 04/07/2006, 10h05
  5. [VB6] [Excel] Résultat d'une requete ds une feuille
    Par elifqaoui dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 07/01/2003, 17h52

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