?
Solved

SQL database index fragmentation percentage

Posted on 2014-02-12
1
Medium Priority
?
725 Views
Last Modified: 2014-02-12
I am not familiar with database index fragmentation. I spoke to my friend regarding my database poor performance,  he advised me to do the re-index. Based on his input I have executed the following SQL query and it is shows all the  table   having  indexstats.avg_fragmentation_in_percent > 30



SELECT OBJECT_NAME(ind.OBJECT_ID) AS TableName,
ind.name AS IndexName, indexstats.index_type_desc AS IndexType,
indexstats.avg_fragmentation_in_percent
FROM sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, NULL) indexstats
INNER JOIN sys.indexes ind  
ON ind.object_id = indexstats.object_id
AND ind.index_id = indexstats.index_id
WHERE indexstats.avg_fragmentation_in_percent > 30
ORDER BY indexstats.avg_fragmentation_in_percent DESC


I have given sample output
Output:
Table name  index Name          Index Type                avg_fragmentation_in_percent
Employee     NULL                              Heap                     98.75
Sales            PK_SALES          CLUSTERED INDEX              85
Customer   NULL                          Heap                             45
Vendor         PK_VEN           CLUSTERED INDEX                60


Should I have to re-index all the above tables ?  
Employee &      Customer    does not have index . Should I have to create a index for that table ?
Does Re-build required or not ?
Should I have to monitor the  avg_fragmentation every day ?
Is there is any tool available in the market to monitor and performance this operation ?
0
Comment
Question by:Varshini S
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 75

Accepted Solution

by:
Aneesh Retnakaran earned 2000 total points
ID: 39854287
You can rebuild all the indexes with fragmentation > 30 and re frag the others
Use the maintenance plans mentioned here

http://ola.hallengren.com/ 

>Should I have to monitor the  avg_fragmentation every day ?
It depends on the no of inserts and updates on those tables, usually I perform this once a week
>Is there is any tool available in the market to monitor and performance this operation ?
use the query mentioned in the above link, that takes care of which to reindex
0

Featured Post

Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Why is this different from all of the other step by step guides?  Because I make a living as a DBA and not as a writer and I lived through this experience. Defining the name: When I talk to people they say different names on this subject stuff l…
What if you have to shut down the entire Citrix infrastructure for hardware maintenance, software upgrades or "the unknown"? I developed this plan for "the unknown" and hope that it helps you as well. This article explains how to properly shut down …
Via a live example, show how to backup a database, simulate a failure backup the tail of the database transaction log and perform the restore.
Viewers will learn how the fundamental information of how to create a table.
Suggested Courses

801 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question