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 :

Reconstruction d'un index


Sujet :

Administration SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de Christophe Charron
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    934
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 934
    Par défaut Reconstruction d'un index
    Bonjour,

    lorsque mes index sont fragmentés à plus de 40%, je tente de les reconstruire.
    Mais cela ne fonctionne pas toujours : parfois, le pourcentage de fragmentation ne change pas, parfois il diminue un peu et parfois il passe "bien" à zéro.

    Je pensais que faire un
    alter index all on matable rebuild;
    remettait les compteurs à zéro.

    Pouvez-vous m'aider à comprendre ce comportement, s'il vous plaît?
    Attention, je ne parle pas des index de type HEAP, donc j'aimerais accessoirement me débarrasser, au pire et au mieux connaître les index absents qui justifient leur présence.

    D'avance, merci pour vos lumières.

  2. #2
    Membre émérite

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

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

    Informations forums :
    Inscription : Novembre 2014
    Messages : 817
    Billets dans le blog
    2
    Par défaut
    vérifier le nbre des pages dans vos indexes

    aucun besoin de faire rebuild sur les indexes de petit tailles

  3. #3
    Membre Expert

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Billets dans le blog
    8
    Par défaut
    Bonjour,

    En complément de ce qui a été dit, à très juste titre, par abdallah_mehdoini, si vous regardez, de plus près, les scripts d'ola hallengren, chargés de la reconstruction et/ou de la réorganisation des index , vous verrez que le seuil minimal, par défaut, pour le nombre de pages est de 1000 (@MinNumberOfPages int = 1000). Il s'agit, en fait, d'une recommandation de Microsoft.

    En d'autres termes, dès lors que le nombre de pages de l'index est inférieur ou égale à 1000, ne perdez pas votre temps à essayer, de réduire, coûte que coûte, la fragmentation !

    En outre, pour les toutes petites tables, il n'est pas rare que le taux de fragmentation reste incompressible même après une reconstruction de l'index.

    A+

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 002
    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 : 22 002
    Billets dans le blog
    6
    Par défaut
    Le taux de fragmentation peut aussi rester élevé si vous index sont :
    1) des tables en heap (index_id = 0) avec des lignes très longues (à éviter... => tables obèses)
    2) des tables en cluster (index_id = 1) avec des clef très logues
    3) des index nonclustered avec des clefs très longues.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. reconstruction d'un index
    Par joujousagem2006 dans le forum Administration
    Réponses: 1
    Dernier message: 28/05/2014, 18h15
  2. Connaître la date de reconstruction d'un index
    Par croboonz dans le forum Administration
    Réponses: 4
    Dernier message: 10/09/2009, 14h44
  3. Reconstruction d'index
    Par superfly dans le forum Oracle
    Réponses: 22
    Dernier message: 23/03/2006, 16h58
  4. Reconstruction d'une table avec index
    Par Ry_Yo dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 22/04/2005, 09h12
  5. Réponses: 4
    Dernier message: 16/12/2004, 13h56

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