Defrag.NSF (FAQ)

Defrag.NSF - Frequently Asked Questions
 
Q. What is the difference between Defrag.NSF and Compact?
A. The primary function of Compact is to recover usable free-space within a Domino database and optionally eliminate all free space. This is done with no regard to the physical layout of the database file on the disk - this is the operating system's job. Unfortunately Windows NTFS has a nasty habit of scattering data all over the disk. This is known as file fragmentation. When a file is fragmented the heads on the drive arm need to move (seek) to different tracks to read and write data. This physical operation takes a significant amount of time and reduces data throughput. Defrag.NSF tackles this file fragmentation issue by re-ordering the file and making sure that it is stored in a single contiguous location on the disk, reducing I/O and improving performance.
 
Q. Can I schedule Defrag.NSF to run with my other server maintenance tasks using a program document?
A. Yes you can. You need to issue the following command: nserver.exe -c "tell defrag process".
 
Q. How much impact does Defrag.NSF have on my server or it's availability to users and when can I safely run Defrag.NSF?
A. Preemptive recommends that you run the defragmentation operation after-hours. It is however possible to run it during the day and when Domino is running. There will be a slight performance hit while the databases are defragmented.
 
Q. I have large databases on my server which are extremely fragmented, how long will defragging take?
A. Defragmentation time is highly dependant on the performance of the server's disk subsystem as it is a highly I/O bound process.
 
Q. After defragging how much performance increase can I expect?
A. If the database is currently highly fragmented and heavily used our tests show that you can expect a significant reduction in I/O's required to access the database. How this manifests as an actual improvement in response times will vary from site to site.
 
Q. On a busy Domino server how often will Defrag.NSF typically need to run to maintain improved server performance?
A. Preemptive recommends scheduling the defrag operation as a nightly maintenance operation. We recommend setting the automatic selection methods that can be found on the Technical Settings document of the product. We also recommend running Defrag.NSF after any form of database Compact. Databases that show daily fragmentation should receive special attention. Enable the "Advanced Settings" option for the database in Defrag.NSF, enable "Monitor Free Space" and then enable "Pre-Allocate Free Space". This will reduce future fragmentation by padding the database with usable free space.
 
Q. Notwithstanding network limitations, will end users experience improved access times, file opening, etc?
A. Defrag.NSF will reduce disk I/O and improve responsiveness. End users will have a more responsive experience, how dramatic this is will be dependant on the current health of the Domino server.
 
Q. I don't know of anybody who actually runs a defragger on Domino databases, do you have any measured data or stats that actually prove it is worth it?
A. On typical live production servers we have seen Disk Read Bytes/sec averages improve from 31,000,000 to 60,000,000 and Disk Split IO/sec slashed from 28.5 down to 0.78. In some cases we have seen read performance increases as high as 400%. Database backup times will also be greatly reduced, one particular customer reported their weekly database backup maintenance times as being reduced from 15 hours down to 10 hours. You can request a free 14 day evaluation today, run your own test logging and experience the benefits first-hand.
 
Q. How is the product licensed?
A. The product is licensed on domain name and the number of servers.
 
Q. What are the advantages of using Defrag.NSF over other general utilities, for example the defragmentation utility built into Windows?
A. Defrag.NSF has several advantages here. Being a Domino specific tool it actually runs as a server task and therefore can be configured to function at an individual Domino database level rather than over an entire disk. As a database oriented utility you have the ability to generate reports, action tasks and schedule run times alongside other Domino maintenance tasks such as Compact and Fixup, all integrated and configured from within the Defrag.NSF Technical Settings document. In addition, Defrag.NSF can also be configured to pre-allocate contiguous free-space in your database, creating headroom for growth to help prevent scattering data to random sectors of the disk. This helps in delaying the onset of further fragmentation during write operations.
 
Q. Are any special precautions required when using Defrag.NSF?
A. Defrag.NSF uses the low-level disk defragmentation API's provided by Windows and as such is completely safe and is totally invisible to users of the database being processed. Databases can still be accessed, backups can still run and mail can still be delivered. There is no need to backup your Domino server before running Defrag.NSF.
 
Q. How do I install a new updated version of Defrag.NSF?
A. 1. Sign the template
2. Replace the design of your current Defrag.NSF with the new signed template.
3. Open the Defrag.NSF database. (In the lower left-hand corner it should now report the new version 1.xx).
4. Select "Actions"/Uninstall from the menu bar at the top. In the dialog box select "Yes" to remove the add-in task.
5. Click OK to the "manually delete this database" info message.
6. Click on the "Install Server Task" button and then "Yes" to the dialog box.
7. Open and then save(click OK) the Technical Settings document to make all new options available
 
Q. Does Defrag.NSF have settings for logging info?
A. Yes, add the setting "DEFRAG.NSF_LOG_LEVEL=" (without quotes) to the servers notes.ini and use the level settings 1, 2 or 3. (Where 1=show errors, 2=show errors and info messages (default setting), 3=debug).
 
Q. How do I uninstall Defrag.NSF?
A. 1. Select Actions -> Uninstall from the menu bar.
2. Select "Yes" to the "Remove Defrag.NSF" dialog box.
3. A second dialog box will appear prompting to manually delete the defrag.nsf database.
 
Q. I've entered my supplied license key but I'm getting a message on the server console saying "License key is malformed (ie.invalid)" or "Please enter a valid license key or contact Preemptive Consulting to obtain one".
A. Check the Defrag.NSF Technical Settings document to see if the Domino domain name listed on the document is the same as the one you registered with Preemptive when you applied for the license. If it is different you may be using a wrong or incorrectly set up Location Document. ie. wrong domain name. Another possibility is that you have registered for your Defrag.NSF licence using a different Domino domain to the one you are actually testing in, check the Domino domain you registered is the same as listed on the Server Document.
 
Q. Can I just set one Defrag.NSF database and replicate it around to my other servers, or do I have to manually install and setup one Database per server?
A. We recommend installing Defrag.NSF separately on each server. This gives you fine-grain control over the Technical Settings and also limits replication traffic.
 
Q. What is the "Health Index"?
A. What we call "Health Index" is 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 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).
 
Q. I have noticed a database that has been defragged and I have the "Performance Logging" option enabled but this particular database has not been logged in the Performance Log, what happened?
A. With regard to the database missing from the Performance Log, the reason for this is that when "Performance Logging" is enabled, Defrag.NSF is actually doing 3 reads of the file to get a "before" average, then it defragments the file, then does another 3 reads to get an "after" average. So there is basically 6 reads involved as well as the actual defragmentation process. During that process if something else has happened on the server in the background that has affected or otherwise skewed the end result Defrag.NSF will discard that result and not enter it in the Performance Log.
 
Return to Defrag.NSF Product Page