Managing Tier 1 User Data
Tier 1 user data at MSI commonly spans three storage locations:
private home directory:
$HOMEproject space:
$MSIPROJECT,$SHARED, and$PUBLICglobal scratch:
$SCRATCHor$SCRATCH_GLOBAL
These quotas are independent. Use userquota for your private home directory. Use groupquota for project space and global scratch.
Interactive Apps missing on Open OnDemand
Open OnDemand stores interactive session job scripts and logs in ~/.ondemand, so it depends on free space in your private home directory.
Each user is allocated a private home directory on /users/[0-9]/INTERNETID with:
200 GB storage limit
1 million file count limit
If either home directory limit is reached, the Interactive Apps interface may disappear. Reducing home directory usage below the limit restores the ability to create new sessions on Open OnDemand.
Checking current usage
Users can check quota from a remote shell or a login node.
Private home directory
Use userquota.
Example output from userquota:
11:59:23 [vega0051@ahl02 ~ ]$ userquota
Quota for user 'vega0051'
------------------------
BYTES |
Usage | 45.00 GB
Quota | 200.00 GB
Percent used | 22.5 %
------------------------
FILES |
Usage | 176,452
Quota | 1,000,000
Percent used | 17.6 %
Project space and global scratch
Use groupquota to review project space and global scratch for your primary group. If you belong to multiple groups, use groupquota -g GROUPNAME -r for a specific group.
Example output from groupquota may look similar to:
11:59:58 [vega0051@ahl02 ~ ]$ groupquota
Quota for group 'example-lab'
------------------------
PROJECT SPACE
BYTES |
Usage | 7.52 TB
Quota | 10.00 TB
Percent used | 75.2 %
------------------------
FILES |
Usage | 3,841,219
Quota | 5,000,000
Percent used | 76.8 %
------------------------
SCRATCH GLOBAL
BYTES |
Usage | 12.40 TB
Quota | 40.00 TB
Percent used | 31.0 %
------------------------
FILES |
Usage | 4,112,804
Quota | 13,200,000
Percent used | 31.2 %
If BYTES or FILES usage in userquota exceeds 100%, see below on how to identify and reduce home directory usage.
If project space or global scratch in groupquota is close to 100%, use groupquota -a to see approximate usage by user and groupquota -a -s files when file count is the main issue.
Reducing home directory BYTES usage
If you are not sure which directory is consuming most of your home directory quota, open a new remote shell and execute:
find $HOME -maxdepth 1 -exec du -sh '{}' \; | sort -sh
This measures the sizes of the top-level directories and files and sorts them from smallest to largest.
Once the larger directories have been identified, MSI recommends relocating them to your project’s /shared directory.
If you do not already have a user directory in /shared, create one with:
mkdir -p $SHARED/$USER
Note that $SHARED in this example points to your primary project’s shared directory. If you want to create a directory in a secondary project, you will need to enter the full path.
An example of moving a directory or file to /shared:
mv /path/to/file.txt $SHARED/$USER
Reducing home directory FILES usage
If you are not sure which directories are consuming most of the file count limit, open a new remote shell and execute the following commands.
Use these commands to create a directory in /scratch.global/, if it is not already present, make a local copy of the filecount.sh shell script, and execute it on the home directory:
mkdir -p $SCRATCH/$USER
s3cmd get s3://helpdesk/filecount.sh $SCRATCH/$USER
bash $SCRATCH/$USER/filecount.sh $HOME
If you have a significant number of files, this will take some time to count. The output on the screen will show the 10 directories with the largest number of files. Additionally, the output will be saved to your scratch global directory as a text file similar to INTERNETID_filecount_TIMESTAMP.txt.
For example, a directory with 170k files takes about 1 minute to traverse.
Managing project space and global scratch usage
Project space and global scratch quotas are attached to the MSI group, so coordinate with your collaborators before deleting shared data.
Use
groupquota -ato identify which group members are consuming the most storage.Use
groupquota -a -s fileswhen file count, rather than total bytes, is the main problem.Move inactive project data off Tier 1 when appropriate. See Reducing Tier 1 Footprint at MSI.
Remove transient data from global scratch when it is no longer needed. Global scratch is temporary storage and should not be used for long-term retention.
Further Guidance
If you need help interpreting quota reports or deciding what to move, email MSI support and staff may be able to help.