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 :

update statistics avec l'option "NORECOMPUTE"


Sujet :

Administration SQL Server

  1. #1
    Membre régulier
    Homme Profil pro
    consultant BI
    Inscrit en
    Mai 2011
    Messages
    182
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suède

    Informations professionnelles :
    Activité : consultant BI
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Mai 2011
    Messages : 182
    Points : 95
    Points
    95
    Par défaut update statistics avec l'option "NORECOMPUTE"
    Bonjour

    j'ai eu une dégradation du performance sur les requêtes exécuter sur un de mes table j'ai lancer la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dbcc show_statistics('RessHum_Conge','PK_RessHum_Conge')
    j'ai trouver que la valeur du "Rows Sampled" est trés inferieur par rapport a la valeur " Rows "ce ci était s'expliquer par que le système SGBD a fait l'update des statistics avec l'option sample sur un échantillonnée très faible
    j'ai corriger ça avec un plan de maintenance avec l'option fullscan et afin que ce Phénomène ne soit répéter est ce que je doit désactiver l'option "mis a jour automatique des statistique" en mettant avec value false ou je doit faire un update statistics avec l'option "NORECOMPUTE" qui permet de forcer mon mis mis a jour
    cordialement

  2. #2
    Membre habitué
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2013
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Octobre 2013
    Messages : 74
    Points : 160
    Points
    160
    Par défaut
    Bonjour,
    Il est TRES RARE que l'échantillon que choisit SQL Server lors de la mise à jour de statistiques ne soit pas représentatif des données de la colonne. La cause de votre problème est sans doute ailleurs, probablement dans le fait que la mise à jour automatique des statistiques s'effectue par défaut après 20% de modification sur une table de grosse volumétrie. Il est donc possible qu'une statistique ne soit plus représentative des données manipulées sans que la mise à jour automatique ne soit déclenchée (cas classique sur des tables d'historique).
    Le fait d'effectuer à la main une mise à jour de la statistique sur la table a rendu cette statistique représentative des données, donc l'Optimizer a fait des choix plus pertinents, donc le traitement est passé plus vite.
    Plutôt que de voir comment forcer une mise à jour automatique des statistiques sur l'intégralité des lignes d'une table, je vous conseille de regarder le traceflag permettant une mise à jour automatique bien avant les 20% de modification sur des grosses tables: http://support.microsoft.com/kb/2754171.

    Et pour répondre à votre question, il ne faut pas dans l'absolu désactiver l'option de mise à jour des statistiques sur toute la base, mais uniquement sur la ou les tables posant problème. Donc l'option NORECOMPUTE de UPDATE STATISTICS est à choisir. Bien entendu, il faudra ensuite mettre en place une mise à jour manuelle régulière des statistiques hors du périmètre "mise à jour auto", idéalement avec l'option RESAMPLE (qui permet de mettre à jour une statistique avec le même échantillon que celui chois pour la dernière mise à jour).

    Cordialement.

    Benjamin

Discussions similaires

  1. Formulaires : problème avec les slashes et les quotes
    Par GarGamel55 dans le forum Langage
    Réponses: 1
    Dernier message: 12/10/2005, 15h59

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