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 :

Reorg / Rebuild : optimisation


Sujet :

Adaptive Server Enterprise Sybase

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 461
    Points : 283
    Points
    283
    Par défaut Reorg / Rebuild : optimisation
    Bonjour,

    Je souhaite optimiser mes Reorg / Rebuild car mes bases grossissant, je ne dispose plus d'assez de temps pour effectuer ces maintenances hebdomadairement. Par ailleurs, je ne suis pas convaincu qu'un Reorg / Rebuild systématique soit judicieux.

    Je souhaite m'appuyer sur les valeurs ci-dessous qui me sont retournées par OPTDIAG après avoir lancer un UPDATE STATISTICS MA_TABLE :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Empty data page count:            0
    Forwarded row count:              0.0000000000000000
    Deleted row count:                0.0000000000000000
    First extent data pages:          0
    Unused page count:                0
    
    Pouvez-vous m'indiquer si c'est la meilleurs méthode et quels sont les seuils par rapport au nombre de ligne d'une table ou un Reorg / Rebuild s'impose ?
    Y-a-t'il une manière plus adaptée pour déterminer quand un Reorg / Rebuild doit être effectué sur une table ?

  2. #2
    Membre chevronné

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Points : 1 828
    Points
    1 828
    Par défaut
    Personellement j'utilise le petit script perl joint pour determiner quand faire des reorg. C'est basé sur la fonction "derived_stats" qui permet de calculer les ratios (data pages cluster ratio, etc) pour chaque table/index.

    De façon très empirique j'utilise 0.95 comme seuil pour le datapages cluster ratio et le index pages cluster ratio, et 0.75 pour le space utilisation. Ce ne sont pas forcément les bons seuils....

    Michael
    Fichiers attachés Fichiers attachés
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 461
    Points : 283
    Points
    283
    Par défaut
    Michael,
    Merci pour le script. Est-il nécessaire de lancer un update statistics avant de lancer ce script perl ?

  4. #4
    Membre chevronné

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Points : 1 828
    Points
    1 828
    Par défaut
    Je ne sais pas si c'est nécessaire - si on le fait on a une plus grande chance que les champs des statistiques dérivées seront correct.

    Michael
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 461
    Points : 283
    Points
    283
    Par défaut
    Merci Michael,
    Je vais le mettre en oeuvre dans un environnement de test.

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 461
    Points : 283
    Points
    283
    Par défaut
    Michael,

    Je n'arrive pas à trouver le module DBAutil qui est utilisé le script que tu m'as fourni. Peux-tu m'indiquer où tu te l'es procuré ?

    Merci d'avance.


  7. #7
    Membre chevronné

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Points : 1 828
    Points
    1 828
    Par défaut
    DBAutil ne sert qu'a trouver le password du user 'sa' pour le dataserver.

    Donc il est facile de s'en passer - il faut mettre en commentaire le "use DBAutil" et toujours passer le password en parametre au script.

    Michael
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 461
    Points : 283
    Points
    283
    Par défaut
    Ok, merci.
    Par contre, est il possible de réduire le temps de certains Reorg/Rebuild ?
    J'en ai certains qui prennent plus de 6 heures les plus grosses tables.

  9. #9
    Membre chevronné

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Points : 1 828
    Points
    1 828
    Par défaut
    reorg rebuild (et reorg compact, reorg rebuild index) font évidemment beaucoups d'IO physiques - d'où la lenteur.

    Pour optimiser, on peut bénéficier d'un pool 16k de taille raisonnable (il peut être agrandi dynamiquement avant le reorg, et re-taillé plus petit ensuite).

    Il y a peut-être d'autres paramètres qui peuvent un peu influer sur la durée du reorg (p.ex. number of sort buffers)

    Michael
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

  10. #10
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 461
    Points : 283
    Points
    283
    Par défaut
    Merci Michael,
    Je vais tester différentes config afin d'optimiser la durée de mes traitements.

  11. #11
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 461
    Points : 283
    Points
    283
    Par défaut
    Par contre, le pool de 16K doit il être créé dans le pool de Default Data Cache ?

  12. #12
    Membre chevronné

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

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Points : 1 828
    Points
    1 828
    Par défaut
    Le pool doit être créé dans la cache qui est utilisée pour la table qui est réorganisée.

    Donc si cette table utilise la "default data cache" alors oui, c'est là qu'il faut mettre le pool 16k.

    Michael
    Michael Peppler
    Membre de TeamSybase - www.teamsybase.com

    "A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson

  13. #13
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 461
    Points : 283
    Points
    283
    Par défaut
    Bonsoir Michael,
    Juste une petite info : je suis curieux et cherche à savoir d'où vient la méthode get_tabinfo. J'ai cherché sur les sites Perl, CPAN, dans le code du DBI.pm, mais rien n'y fait, je ne la trouve nulle part et pourtant ça fonctionne.
    Merci et @ +

  14. #14
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    461
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 461
    Points : 283
    Points
    283
    Par défaut
    Désolé, je viens de voir qu'il s'agit d'une fonction interne à votre code.

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

Discussions similaires

  1. reorg rebuild frequent
    Par mikew75 dans le forum Adaptive Server Enterprise
    Réponses: 1
    Dernier message: 23/07/2009, 10h44
  2. ASE 12.5 : optim reorg rebuild
    Par jeeps64 dans le forum Adaptive Server Enterprise
    Réponses: 5
    Dernier message: 03/02/2009, 13h17
  3. [ASE]Msg 11918, Level 16 lors d'un reorg rebuild ?
    Par Invité dans le forum Adaptive Server Enterprise
    Réponses: 8
    Dernier message: 15/04/2008, 14h52
  4. Probleme lors du reorg rebuild
    Par Invité dans le forum Sybase
    Réponses: 2
    Dernier message: 20/06/2007, 15h49
  5. reorg rebuild et update stat ?
    Par arona dans le forum Sybase
    Réponses: 2
    Dernier message: 31/01/2007, 11h28

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