Monday, November 21, 2011

Guided Tour of Defrag.NSF features - Part 1




I thought we should do a "Guided Tour" series of blog posts to have a feature-by-feature in-depth look at all the cool options available in Defrag.NSF 2.09.

Starting from the start we will work through the feature set and explain all the different options and settings available. Hopefully even long-time users will find some useful tips in this series and even new info on features they weren't aware of. We built Defrag.NSF to be a "set and forget" type product if that's how the administrator wanted to approach it, and sometimes that can allow a lot of the "hidden" cool features slip through the knowledge cracks and never get looked at. Anyway here's the Tour:

Everything can be configured from within the database itself, using the good 'ol admin client. On opening Defrag.NSF you will see the different Views available at the left side:







The Views
Each view will show the cataloged databases, each as an individual document.

By Fragments view.
The respective columns report fragment count, database path, database size and the last time the Defrag process ran on the database.
The Defrag, Fixup and Compact columns will display a Green tick to indicate which databases have been flagged for the respective maintenance task during the next Defrag.NSF maintenance run. The databases are flagged according to how you have configured the Selection Methods on the Technical Settings Document.


Health Index view.

The main feature of this view is the “Health Index” column. The remaining columns are the same as the “By Fragments” view.

What we call "Health Index" is defined as:

The number of (fragments-1) / by the size of the database * 100. The idea being that a very large database with 1000 fragments may actually be healthier (ie, less performance hit) than a really small database with 500 fragments. It allows you to focus on your best return on effort for defragging (This is useful when you are just starting out with Defrag.NSF and there is an extremely large number of databases to work on).

Utilising the "Health Index" selection method will target your most "unhealthy" databases by looking at (in simple terms) the ratio of "number of fragments/database size" and give the best "bang for buck" improvement (This is instead of looking purely at the fragments count). The approach to using the Health Index will vary in each environment but as an example, if the first cataloging of Defrag.NSF shows there are a lot of very badly fragmented databases on the server and you can see that there are 200 that indicate a Health Index of 0.4 and over, then a good strategy would be to begin by setting up the Health Index selection method to target all databases that have a reported Health Index of 0.4 and over. On the next maintenance run Defrag.NSF will target those 200 databases and ignore others, as pointed out, these are the databases that will give you the best return for the defragging effort at this stage, since they are the “least healthy”.

Once those databases have been processed you would lower the Health Index setting to then target all databases with a Health Index of 0.2 or greater, and then down to 0.1 on another subsequent run. At that point you could change selection methods over to “The Top databases” and target the top 500 databases from then on to maintain the environment. This is a good approach to take when confronted with a difficult environment and it allows the maintenance to be applied in a step-wise manner to slowly get things back into shape without wasting the time and resources required to defrag large databases with a couple of fragments in the initial stages of running Defrag.NSF in a difficult environment.



By Name view.

The first column in this view lists the databases in alphabetical order by database path name, the remaining columns are also available in the other views.


Next in the series, we'll be looking at the Maintenance buttons and what task each one allows the administrator to carry out.


(C)opyright Preemptive Consulting -  Respecting the intellectual property of others helps everyone.

No comments: