Mass Storage System
Mstore currently can store several 10's of Terabytes of data. It is suitable for archiving data, but not for storing files you use every day, for the reasons discussed below.
Please follow the guidelines:
- In general, do *not* login to mstore to do your work. We have made exceptions to this in odd situations -- talk to us if you think there's a good reason to use mstore.
- *Do* log into mstore to use the "stage" command *if* this will help performance (it may also hurt performance, read on).
When you access a file, it may be on disk or tape, or both. Tape storage is much larger than disk storage. Files on disk are copied to tape on a continuing basis, and when the disk fills up, files already on tape are deleted from the disk. If you access a file that has been deleted from disk it must be copied from tape. This means fetching a tape from the silo, mounting it on a drive, spacing it forward to the place where the file resides, and reading the file onto disk. This happens automagically, but will result in a delay of a minimum of 30 seconds or more. If you try to access many files over a short time period, the delay multiplies and performance may not be adequate for your needs. There are tricks you can do to help in some cases.
If the associative flag for a file is on for a file, and that file needs to be read in from tape then all the other files in that directory with the associative flag set are staged in at the same time.
This can save 10's of seconds for each file accessed if you access files as a group. Multiple tapes can be mounted and the tapes don't have to seesaw back and forth looking for individual files. In one case where a user was copying over directory tree of 1000's and 1000's of files, it changed the elapsed time from a over a week to a few hours.
This can also cause a huge *negative* impact on performance for everyone. If the associative flags are set in a directory with lots of files, one can use up the tape drives and other system resources for zillions of files that will never be accessed.
To set/unset the associative flag:
- You must log into mstore -- NFS does not support this nonstandard functionality.
- You need /opt/SUNWsamfs/bin in your PATH.
- You need /opt/SUNWsamfs/man in your MANPATH if you want to look at the man pages (a good idea)
- "stage -a" -- sets the associative flag
"stage -d" -- unsets the associative flag
For example, the following sets the associative flag on a directory:
stage -a .
You may also add "-r" to the "stage" command
to set the flag recursively.
The "stage" command can also stage files (i.e., read them from tape to disk). For this you leave off the "-a" or "-d" options. You must log into mstore as above. Then, for example, to stage all the files in a directory and its subdirectories:
stage -r .
You may wish to use the "stage" command when it is impossible to know beforehand when you want lots of files staged vs. just a few. In this case do the "stage" command concurrently or a little before you start your processing jobs. If you do it too far ahead your files may be deleted from disk in the meantime and they'll be staged twice.