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 SQL Server Discussion :

échantillonnage des statistiques très faible


Sujet :

Administration SQL Server

  1. #1
    Membre expérimenté

    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Novembre 2014
    Messages
    816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 816
    Points : 1 354
    Points
    1 354
    Billets dans le blog
    2
    Par défaut échantillonnage des statistiques très faible
    Bonjour a tous
    Ma question a sans doutes déjà été posée mais je n'arrive pas à trouver le topique ,j’explique mon problème ,suite a une réclamation de production sur la présence d'une dégradation de performance je viens de trouver une requête d’extraction lancer a travers un de nos développeur sur un gros table qui contiens plus de 1 milliard ligne pour cela j'ai fait un kill SPId pour ce dernier
    et afin d'analyser plus le problème je viens de vérifier mes statistique sur ce table je viens de trouver cette résultat (voir imprime écran) que échantillonnons pris pour mes stats sont très faible par rapport au nombre totale de ligne ,l'optimiseur c'est celui qui a fait cette opération d'update (option mis a jour des stats est activé) et ce aussi suite Suite a l'absence d'un plan de maintenance régulier sur ce table
    comment je peux vérifier que ces échantillons des statistiques présentant dans mes index sont suffisant pour que l'optimiseur du requête fait un bon calcul du coût
    la je suis dans la merde si un autre personne fait une deuxième extraction
    donc n'hésitez pas à me corriger si je dis des bêtises.
    cordialement
    Images attachées Images attachées  

  2. #2
    Membre averti
    Avatar de taibag
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Inde

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2013
    Messages : 214
    Points : 357
    Points
    357
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Vous devez mettre à jour les statistiques http://http://rudi.developpez.com/sq.../statistiques/

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 904
    Points : 51 649
    Points
    51 649
    Billets dans le blog
    6
    Par défaut
    Vous avez dans votre question la réponse à votre problème...

    Citation Envoyé par abdallah_mehdoini Voir le message
    blablabla ... blablabla ...
    Suite a l'absence d'un plan de maintenance régulier sur ce table
    ...blablabla ... blablabla
    Il suffit donc de mettre en place un plan de maintenance régulier de vos index :
    1) reconstruire si fragmentation de plus de 30%
    2) réorganiser si fragmentation de moins de 30% et plus de 10
    3) recalculer les stats si obsolète
    DANS CET ORDRE PRECIS !

    Pour déceler les statistiques à recalculer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT sc.name AS TABLE_SCHEMA, o.name AS TABLE_NAME, 
           s.name AS STAT_NAME, last_updated, modification_counter
    FROM   sys.objects AS o
           INNER JOIN sys.schemas AS sc
    	         ON o.schema_id = sc.schema_id
           INNER JOIN sys.stats AS s ON s.object_id = o.object_id
           CROSS APPLY sys.dm_db_stats_properties(s.object_id, s.stats_id) AS sp
    WHERE  modification_counter > 1000;
    A +

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

Discussions similaires

  1. Générer des statistiques avec graphiques, histogrammes
    Par nico33307 dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 28/11/2005, 16h03
  2. [MySQL] Obtenir des statistique sur l'utilisation de la bdd
    Par duplo dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 10/09/2005, 00h23
  3. Des scripts très communiquant
    Par shinux2004 dans le forum Langage
    Réponses: 2
    Dernier message: 19/07/2005, 18h05
  4. [DBA] Calcul des Statistiques sans privilèges DBA
    Par Krashtest dans le forum Administration
    Réponses: 14
    Dernier message: 06/05/2004, 16h08

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