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

Adaptive Server Enterprise Sybase Discussion :

[ASE12.0] Statistiques derivees sans optdiag ?


Sujet :

Adaptive Server Enterprise Sybase

  1. #1
    Invité
    Invité(e)
    Par défaut [ASE12.0] Statistiques derivees sans optdiag ?
    Bonjour,

    existe-t-il une technique ou une proc permettant d'obtenir les statistiques derivees de mes objets sans avoir recours a un parser de la sortie d'optdiag ? Je suis charge de refaire notre outil de reorg pour le rendre "plus intelligent" (ne pas le declencher systematiquement pour toutes les tables DOL sans raison).

    Merci

    Xavier

  2. #2
    Membre éprouvé
    Inscrit en
    Août 2007
    Messages
    134
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 134
    Par défaut
    La fonction derived_stat est arrivée en 12.5.3 (EDIT: 12.5.0.3), de mémoire.
    Sur quelle statistique voulez-vous vous baser?

  3. #3
    Invité
    Invité(e)
    Par défaut
    Je parle de tout ce qui concerne le large io efficiency, le cluster ratio, les forwarded, ...

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Par défaut
    Kevin Sherlock a écrit une proc qui s'appelle sp__optdiag. Une recherche sur google devrait la trouver.

    Michael

  5. #5
    Invité
    Invité(e)
    Par défaut
    Malheureusement sp__optdiag utilise aussi la built-in derived_stat, donc inutilisable avec ma (vieille) version d'ASE...

  6. #6
    Membre éprouvé
    Inscrit en
    Août 2007
    Messages
    134
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 134
    Par défaut
    Les forwarded rows et deleted rows sont accessibles directement dans les tables système, ce sont les colonnes forwrowcnt et delrowcnt de systabstats.
    Il est possible de calculer de space utilisation en utilisant datarowsize de cette même table (c'est imprécis, car les champs à longueur variable ne sont pas bien pris en compte).

    Voici une ancienne version de sp__optdiag qui utilise cette methode:

    http://www.xs4all.nl/~bruggin0/sybas...0.9_011102.sql

  7. #7
    Invité
    Invité(e)
    Par défaut
    Merci pour toutes ces bonne informations.

    Pendant que j'y suis, je cherche le code le plus propre possible pour pallier l'absence de commande lockscheme. En parcourant mes archives je suis tombe sur ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    set nocount on
    go
    select o.name, case o.sysstat2 & 57344 when 32768 then 'datarows'
    when 16384 then 'datapages' else 'allpages' end
    from sysobjects o, sysindexes i
    where o.type='U' and o.name not like "spt_%"
    and o.id=i.id and i.indid > 0
    and o.name not in (select object_cinfo from sysattributes
                            where class = 9 and attribute = 1
                            )
    group by o.name
    Je parviens a comprendre la majorite du code sauf 2 choses:

    - pourquoi le indid > 0 (j'aurais tendance a utiliser indid<2)
    - pourquoi filtrer les spt%
    - que signifie la requete dans sysattributes

    Merci

  8. #8
    Membre éprouvé
    Inscrit en
    Août 2007
    Messages
    134
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 134
    Par défaut
    1/ A priori c'est pour ne pas sélectionner les tables qui n'ont pas d'index.
    2/ Les tables spt% sont des tables système dont le type est quand même 'U'.
    3/ Pour sysattributes, je ne l'ai jamais utilisé de cette façon, mais je suppose que c'est encore pour enlever des tables système.
    Pourquoi ne pas faire un sp_helptext sp_help dans sybsystemprocs et regarder comment sybase faut pour obtenir le type de verrouillage?

  9. #9
    Invité
    Invité(e)
    Par défaut
    Effectivement sp_helptext pourrait aider sauf que la proc est quand meme bien "grasse"

    Pour le sysattributes, je vais toutes les afficher et on verra bien.

    Merci pour toutes ces reponses.

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

Discussions similaires

  1. [Statistique]Billet sans statistique, bug ?
    Par kolodz dans le forum Blogs du Club
    Réponses: 4
    Dernier message: 17/12/2014, 15h46
  2. données sans statistiques dans un histogramme
    Par Can10ce dans le forum SAS STAT
    Réponses: 3
    Dernier message: 23/12/2010, 11h40
  3. Connaître l'activité d'une table sans passer les statistiques
    Par tibal dans le forum Adaptive Server Enterprise
    Réponses: 9
    Dernier message: 15/06/2010, 11h43
  4. [DBA] Calcul des Statistiques sans privilèges DBA
    Par Krashtest dans le forum Administration
    Réponses: 14
    Dernier message: 06/05/2004, 16h08
  5. [Kylix] Fiches sans bordure
    Par alex dans le forum EDI
    Réponses: 4
    Dernier message: 28/04/2002, 21h19

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