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

Administration Oracle Discussion :

[10g] Problème de performances et Tablespace en autoextend


Sujet :

Administration Oracle

  1. #1
    Membre régulier
    Inscrit en
    Juillet 2007
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 111
    Points : 86
    Points
    86
    Par défaut [10g] Problème de performances et Tablespace en autoextend
    Bonjour,

    Je travaille sur une base 10g avec un applicatif Java couplé à un framework Windchill.

    Un traitement par lot connait actuellement de forts et inexpliqués ralentissements (~x100). J'investigue sur plusieurs pistes (stats, index, code, etc.) depuis une semaine mais je ne comprends pas d'où vient le problème. Et le jeu de ping-pong entre l'équipe développeur et moi, le "dba" (très honorifique...) commence à lasser.

    En parallèle, un développeur de l'équipe m'explique que le dba de l'industriel, qui a développé la plateforme il y 6 ans, lui avait dit que certains problèmes de performances peuvent être dus au mauvais dimensionnement des tablespaces.

    Tous les tablespaces sont en autoextend. Certains sont effectivement en permanence entre 98% et 99% d'occupation mais Oracle gère très bien l'allocation automatique et depuis 2 ans, rien à déplorer de ce coté.

    De plus, un traitement identique sur ce domaine fonctionnel avait très bien fonctionné il y a un mois. Le souci est l'opacité de la couche Winchill/objet qui créé de nombreuses occurrences dans ses tables hors métier sans que nous maîtrisions vraiment les processus de création/mise à jour.
    Pour exemple du bon fonctionnement de l'autoextend, lors de ce traitement, la table Métier principale était passée de 1.5 M de lignes à 31 M, avec augmentation de la taille de la base de 10Go (dont 7,5 pour cette seule table dans son tablespace particulier) sans difficulté particulière. Pour éviter toutes mauvaises surprises, tous les index de la base ont été reconstruits et les stats ont été recalculées.

    Le traitement actuel est un complément beaucoup plus petit (1/3) mais les temps de traitement sont très très très, trop, longs.

    Je me doute qu'avec la description succincte du problème vous ne pourrez pas me donner de réponse précise. Mais je cherche pour l'instant simplement à éliminer les pistes les plus improbables ou à trouver une nouvelle piste à suivre.

    Je vous remercie par avance de toute aide que vous voudrez bien m'apporter.

  2. #2
    Membre expérimenté Avatar de ojo77
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Décembre 2010
    Messages
    680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 680
    Points : 1 597
    Points
    1 597
    Par défaut
    La piste à suivre a été indiquée dans ce post par mnitu.

    Donc voir où le temps est perdu et comprendre pourquoi.

  3. #3
    Membre éclairé

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2003
    Messages
    701
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 701
    Points : 741
    Points
    741
    Billets dans le blog
    1
    Par défaut
    Bonjour ,

    ESt-ce que cette modification aussi importante n'explique pas les temps de traitements ?
    Pour exemple du bon fonctionnement de l'autoextend, lors de ce traitement, la table Métier principale était passée de 1.5 M de lignes à 31 M, avec augmentation de la taille de la base de 10Go (dont 7,5 pour cette seule table dans son tablespace particulier) sans difficulté particulière. Pour éviter toutes mauvaises surprises, tous les index de la base ont été reconstruits et les stats ont été recalculées.


    Cdlt

  4. #4
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 460
    Points : 8 074
    Points
    8 074
    Par défaut
    A ce stade de l'enquête, je ne saurais dire mieux que Ojo77.

    Pour ceux qui sont en 11g (j'ai bien vu que ce n'est pas le cas ici), il existe un nouveau processus nommé SMCO, qui se charge d'effectuer, en tâche de fond et à temps perdu, des allocations d'espace anticipées pour les fichiers autoextensibles. L'objectif est justement de ne pas être pénalisé par des allocations dynamiques qui devraient, sinon, avoir lieu en plein traitement.
    Ceci dit, il est évident que ce mécanisme vise le transactionnel, et ne pourra pas anticiper des chargements massifs.

    http://docs.oracle.com/cd/E11882_01/...s.htm#REFRN104
    Consultant / formateur Oracle indépendant
    Certifié OCP 12c, 11g, 10g ; sécurité 11g

    Ma dernière formation Oracle 19c publiée sur Linkedin : https://fr.linkedin.com/learning/oracle-19c-l-administration

  5. #5
    Membre régulier
    Inscrit en
    Juillet 2007
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 111
    Points : 86
    Points
    86
    Par défaut
    Merci pour vos réponses.
    Je vais mettre en place les traces (pour la première fois ).

  6. #6
    Membre régulier
    Inscrit en
    Juillet 2007
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 111
    Points : 86
    Points
    86
    Par défaut
    Première question : Puisque l'ordre de base est un ALTER SESSION, le fait que je ne "maîtrise" pas les sessions (géré par un pool de connexion dans le framework Windchill) qui lance effectivement les traitements, va-t-il poser problème ?

    Si oui, un indice ?
    Merci d'avance.

  7. #7
    Membre expérimenté Avatar de ojo77
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Décembre 2010
    Messages
    680
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 680
    Points : 1 597
    Points
    1 597
    Par défaut
    Peut-être que les commandes suivantes peuvent vous aider (dans SQL*Plus)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    oradebug doc event
    oradebug help

  8. #8
    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
    Vous avez besoin d’identifier la session pour activer la trace que pour cette session. Investiguez si l’application utilise DBMS_APPLICATION_INFO pour exposer le code_module ou l’action ou la zone client_info. Autre piste pourrait être un éventuel utilisateur applicatif. Si c’est le cas bingo vous pouvez tracer en fonction de ces informations.
    Sinon abattez-vous vers AWR si vous avez la licence ou le vieux statpack. Faite une snapshot avant de lancer le traitement qui pose des problèmes de performance et un autre 15 minutes plus tard ou à la fin.

  9. #9
    Membre régulier
    Inscrit en
    Juillet 2007
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 111
    Points : 86
    Points
    86
    Par défaut
    Bien, bien, bien...

    Les développeurs ont - enfin - analyser leurs propres traces et ont découvert que la nouvelle organisation des données, qu'ils avaient mis en place entre les deux occurrences de traitement, avait eut de conséquences inattendues
    Une de leur étape ramenait dorénavant 6500 objets au lieu de ... 1 ...en Java .

    Donc merci à tous pour le temps dépensé
    Le problème ne vient pas d'Oracle.

    Ceci dit, j'ai mis en place les traces en suivant l'activité de l'utilisateur applicatif (all_users, v$session) et ai utilisé ce post que j'ai trouvé très utile et très bien rédigé : ICI (Merci à Tafora).

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

Discussions similaires

  1. Problème de performance avec Forms 10g
    Par salim11 dans le forum Administration
    Réponses: 0
    Dernier message: 20/04/2012, 13h25
  2. Problème Exp/Imp 10G vers 9i (taille de tablespace)
    Par toniogab dans le forum Import/Export
    Réponses: 0
    Dernier message: 06/07/2011, 15h16
  3. Problèmes de performances sur une base oracle 10g
    Par ORAMEL dans le forum Oracle
    Réponses: 3
    Dernier message: 11/09/2007, 09h11
  4. [ Oracle 9ias / 10g] problème de connexion
    Par Boosters dans le forum JDeveloper
    Réponses: 2
    Dernier message: 20/01/2004, 17h23
  5. [ POSTGRESQL ] Problème de performance
    Par Djouls64 dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 26/05/2003, 16h18

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