Accueil Bases de données Que fait la défragmentation pour les systèmes SQL?

Que fait la défragmentation pour les systèmes SQL?

Anonim

Q:

Que fait la défragmentation pour les systèmes SQL?

UNE:

La maintenance et la surveillance continues de la base de données sont les éléments clés à prendre en compte pour un bon fonctionnement d'un système SQL. Lorsqu'une base de données est créée et remplie, les données sont initialement placées dans un emplacement physique contigu (si un espace physique contigu suffisant est disponible). Ainsi, dans ce cas, l'ordre logique et l'ordre physique des données sont susceptibles d'être similaires et cela augmente les performances.

Lorsque les données sont modifiées, supprimées ou mises à jour, les index pertinents sont également mis à jour automatiquement pour refléter ces changements. En conséquence, les index deviennent fragmentés et les informations dispersées dans l'espace de stockage. Il modifie l'ordre physique des données (car il perd l'allocation contiguë) et la récupération devient longue, ce qui entraîne des performances de base de données lentes.

La solution à ce problème consiste à effectuer une défragmentation sur une base périodique. La défragmentation reconstruit ou réorganise en fait les index pour faire correspondre l'ordre logique des données avec l'ordre physique. Avant d'effectuer une opération de défragmentation, tous les index doivent être analysés correctement. Les résultats de l'analyse déterminent si une réorganisation ou une reconstruction est nécessaire.

Les deux principales opérations effectuées par le processus de défragmentation sont:

  • Réorganisation d'index - La réorganisation d' index est effectuée lorsque la fragmentation est à un niveau faible et que les performances ne sont pas sérieusement affectées. Ce processus effectue en fait la réorganisation physique des pages de niveau feuille pour correspondre à l'ordre logique. Il ne crée pas de nouvelles pages; il réorganise uniquement les pages existantes. La réorganisation peut être effectuée lorsque le système est en ligne sans bloquer les opérations normales de la base de données.
  • Reconstruction d'index - Le processus de reconstruction d'index est effectué lorsque la fragmentation est à un niveau plus profond et que les performances sont trop lentes. Dans ce processus, l'index d'origine est supprimé et un nouvel index est créé. Ainsi, l'ordre physique et logique est remis aux positions d'origine et les performances améliorent le collecteur. La reconstruction peut également créer de nouvelles pages selon les besoins, et elle peut être effectuée en mode hors ligne ou en ligne.

Par conséquent, la défragmentation doit faire partie du processus de maintenance de SQL Server et doit être prise au sérieux. Un plan d'analyse des requêtes approprié doit être construit et suivi. En fonction de la sortie de l'analyse des requêtes, la reconstruction ou la réorganisation des index doit être effectuée. En bref, la défragmentation est essentielle pour l'amélioration des performances des systèmes SQL.

Que fait la défragmentation pour les systèmes SQL?