Reallocate and snapshots

We have a flex volume that is exported as a LUN to a Windows 2008 server.  The application/database that uses this LUN has seen varying batch runs and we suspect that it may have something to do with the storage.

I was reading up on the reallocate command and thought it might help as well as deleting some snapshots.  After deleting all but 7 snapshots and then running the reallocate command a scheduled snapshot took place at 11:59pm and then the batch run began at around 12:00am and ran much faster and we thought we had discovered the problem.  However, the morning  after the scheduled reallocate at 6pm and snapshot at 11:59pm, the batch ran long again.

This database does a lot of re-writing of data so I was wondering if I should be running the reallocate command with the -f and -p flags.  Also, should I be concerned with when the snapshot takes place (before or after the reallocate command)?  Or is the snapshot potentially the problem and we should back up a different way?  Thanks.

Re: Reallocate and snapshots

Hi Paul,

I am sure you have seen this thread already:

If not, then please have a look at it.

Fragmentation & reallocation are still a kind of a skeleton in NetApp's cupboard & frankly speaking, official documentation is either non-existent, or patchy.

Re snapshots:

To me, using just common sense, snapshots do increase fragmentation due to the very nature of WAFL - unless there are no / very few new writes. So if you require decent sequential read performance in a frequently changed volume with snapshots, running reallocate on regular basis could be good.

-p option is a must IMHO, as this is the only way to avoid inflating existing snapshot whilst reallocating.