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 :

[ASE 11.9] Comment benchmarker une table ?


Sujet :

Adaptive Server Enterprise Sybase

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 20
    Points : 16
    Points
    16
    Par défaut [ASE 11.9] Comment benchmarker une table ?
    Bonjour,

    Je vous explique ma problématique de DBA qui découvre.
    Sur un serveur sybase donné (sous 11.9), j'obtiens un rapport quotidien de volumétrie de mes bases et tables. Concernant mes tables, j'ai un top des grosses tables avec le % d'espace non utilisé.

    Sur les tables avec un gros % d'espace non utilisé, je voudrais lancer une défragmentation soit par reorg rebuild soit par un drop/create index selon si la table est en lock datarow ou allpages suivi ensuite d'un update statistics et exec sp_recompile.

    Pourriez-vous dans un premier temps me confirmer que j'agis correctement ?

    Ensuite le truc c'est que je voudrais lancer avant et après défragmentation une requête benchmark sur la table afin de voir les effets de temps de réponse obtenus.
    Je ponds donc une requête consommatrice :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    declare @date varchar(255)
    select @date = convert(varchar,getdate(),108)
    print @date
     
    select     col1, col2, col3, max(col4)
    from TABALE
    group by col1, col2, col3
     
    select @date = convert(varchar,getdate(),108)
    print @date

    Le problème c'est que si je lance deux fois de suite la requête, la seconde fois ça ira méga vite car elle a été mise en cache.
    Comment puis-je vider de façon probante le cache pour répéter les mêmes temps d'attente (sachant que je ne puis redémarrer le serveur ou alors le week-end mais vous comprendrez que je ne suis pas tenté) ?
    Ceci afin qu'après une défragmentation la différence de temps provienne uniquement de cette défragmentation ?

    Par ailleurs si vous voulez créer une requête benchmark sur une table uniquement, quelle serait votre requête ? Tester un group by est-ce un bon axe ?

    Je vous remercie de votre aide.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2009
    Messages : 10
    Points : 12
    Points
    12
    Par défaut
    peut être lancer le select avec une stratégie MRU quoique je ne sais pas si c'est supporté sur 11.9....

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 056
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 056
    Points : 1 216
    Points
    1 216
    Par défaut
    Salut

    Il faudrait plus d'info pour mieux comprendre ton problème :

    Est-ce que tu peux poster :

    la structure de la table et les index (sp_help table)
    le résultat de sp_spaceused table

    et l'exécution de la requete avec les options suivantes activées :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set showplan on
    set statistics io,time on
    merci
    Emmanuel T.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 20
    Points : 16
    Points
    16
    Par défaut
    En fait j'ai trouvé une solution toute simple. deux bases même structure sur même serveur.

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

Discussions similaires

  1. Comment retourner une table !
    Par ptidoudou02 dans le forum Langage SQL
    Réponses: 7
    Dernier message: 14/12/2004, 14h46
  2. [SWT] Comment remplir une Table ?
    Par simon77 dans le forum SWT/JFace
    Réponses: 1
    Dernier message: 23/08/2004, 10h31
  3. comment filtrer une table avec deux criteres càd 2 colonnes
    Par athmane2dz dans le forum Bases de données
    Réponses: 7
    Dernier message: 28/07/2004, 15h25
  4. Comment créer une Table dans 1 Bdd ACCESS avec Builder??
    Par makandja dans le forum C++Builder
    Réponses: 6
    Dernier message: 17/03/2004, 20h21
  5. Comment Copier une table dans un fichier?
    Par thx2003 dans le forum Requêtes
    Réponses: 2
    Dernier message: 15/12/2003, 12h09

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