I would recommend that if you use Cold Storage you only use it to Delete files and not move them. If you want to move files just use the Relocate option in the Archive Server Configuration to move a percentage of the archive to another disk. I would also look at enabling Compression before moving via Cold Storage.
Moving files won't affect database performance since those database records are still going to be in the vault. I'm not a DBA, but I would guess the only way to improve database performance in the context of your question would be to delete/destroy files which removes records from database permanently.
Thanks for your feedback. I hadn't looked at the Relocate option or compression but it is useful to know about.
We definitely won't be deleting files at least to begin with as with this many files it is likely we will need to recover something at some point i.e. non revision tagged parts incorrectly referenced in an assembly. If it turns out we don't need to recover anything, I guess that will be the indication that we can delete rather than move.
Yes, the database records will still exist, but won't retrieving the actual file from the archive server be faster since there are less files to search through?
There is a big downside to deleting files, using copy tree on an assembly referencing deleted versions will not work.
Not that this is the best approach, but what we have done is actually copy a project once complete for a period of time out of the vault to another non-vaulted location.
We then remove the files from the vault, to help keep the vault from getting to large.
Using this practice our vault sits around 350,000 files to date, with another 120,000 files in the other storage location.
If a user needs to access those files they still can, they just only have as-builts not all 100+ versions that used to exist.