Stockage et gestion des fichiers

From Alliance Doc
Revision as of 19:43, 25 September 2018 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
Jump to navigation Jump to search
Other languages:

Introduction

Calcul Canada dispose de nombreuses options de stockage capables de répondre aux besoins des utilisateurs œuvrant dans des domaines extrêmement variés. Selon vos besoins et votre usage particulier, vous avez le choix parmi différentes solutions allant du stockage long terme au stockage local temporaire à haute vitesse. Dans la plupart des cas, les systèmes de fichiers de Calcul Canada sont des ressources partagées et devraient être utilisés de manière responsable; en effet, des dizaines et même des centaines d'utilisateurs peuvent être affectés par un seul utilisateur qui se comporte de manière irréfléchie. Ces systèmes de fichiers sont conçus pour le stockage d'un nombre limité de très grands fichiers, habituellement de type binaire puisque les très gros fichiers texte (centaines de Mo et plus) ne sont pas facilement lisibles par un être humain; pour cette raison, vous devriez éviter de stocker des milliers de petits fichiers de quelques mégaoctets, particulièrement dans le même répertoire. Une meilleure approche serait d'utiliser des commandes telles que tar ou zip pour convertir un répertoire de plusieurs petits fichiers en un très grand fichier d'archive; consultez Archiving and compressing files.

Il est de votre responsabilité de vérifier depuis quand vos données sont stockées. Le rôle de la plupart des systèmes de fichiers n'est pas d'offrir un service d'archivage à long terme; vous devez donc déplacer les fichiers et répertoires qui ne sont plus utilisés vers un autre endroit, que ce soit sur votre ordinateur personnel ou une autre ressource de stockage que vous contrôlez. Le transfert de grandes quantités de données se fait généralement avec Globus.

Prenez note que les ressources de stockage ne sont pas pour vos données personnelles, mais bien pour les données de recherche.

Lorsque votre compte est créé sur une grappe, votre répertoire home contient des références à vos espaces project et scratch via des liens symboliques, des raccourcis vers ces autres systèmes de fichiers à partir de votre répertoire home. Notez que ces liens symboliques peuvent apparaître seulement quelques heures après votre première connexion. Un utilisateur possède ses propres espaces home et scratch, alors que l'espace projet est partagé par un groupe de recherche. Ce groupe peut être constitué d'utilisateurs qui possèdent des comptes liés à celui d'un chercheur principal ou de comptes de membres d'une allocation de ressources. Un utilisateur peut donc avoir accès à plusieurs espaces project différents associés à un ou plusieurs chercheurs principaux et les répertoires project de son répertoire home contient les liens symboliques vers ces différents espaces project. Tous les comptes ont accès à un ou plusieurs espaces project. Le répertoire projects dans votre compte contient un lien symbolique vers chaque espace project auquel vous avez accès.

  • Pour un utilisateur dont le compte est lié à un seul compte de chercheur principal, l'espace project par défaut est le même espace project par défaut que celui du compte du chercheur principal.
  • Pour un utilisateur dont le compte est lié à plusieurs comptes, l'espace project par défaut est le même que celui du chercheur principal qui possède le plus grand nombre de comptes qui lui sont associés.

Tous les utilisateurs peuvent vérifier l'espace disque disponible et l'espace disque utilisé par les systèmes de fichiers project, home et scratch avec l'utilitaire en ligne de commande diskusage_report, disponible sur les grappes. Pour ce faire, connectez-vous à la grappe par SSH; à l'invite, entrez diskusage_report puis appuyez sur la touche Enter. L'utilitaire produit un rapport semblable à ceci :

# diskusage_report
                   Description                Space           # of files
                 Home (username)         280 kB/47 GB              25/500k
              Scratch (username)         4096 B/18 TB              1/1000k
       Project (def-username-ab)       4096 B/9536 GB              2/500k
          Project (def-username)       4096 B/9536 GB              2/500k
 

Types de stockage

Les ressources de Calcul Canada comprennent divers systèmes de fichiers pour le stockage; assurez-vous d'utiliser l'espace approprié pour un besoin particulier. Nous présentons ici les principaux systèmes de fichiers de l'infrastructure de Calcul Canada, leurs caractéristiques et les besoins pour lesquels ils sont conçus. Le matériel, la méthode d'accès et le mode d'écriture sont différents pour chacune des options.

Système de fichiers en réseau (NFS pour Network File System)
Ce type de stockage est généralement visible autant sur les nœuds de connexion que sur les nœuds de calcul. Il convient aux petits fichiers importants qui sont utilisés régulièrement, comme le code source, les programmes, les scripts de tâches et les fichiers de paramètres. La performance se compare à celle des disques durs conventionnels.
Système de fichiers parallèle (Lustre, GPFS)
Ce type de stockage est généralement visible autant sur les nœuds de connexion que sur les nœuds de calcul. Avec de multiples baies de stockage et des serveurs rapides, sa performance est excellente pour de gros fichiers et les opérations intensives d'entrées/sorties. Il est utilisé pour le stockage à long terme et le stockage temporaire (scratch). L'utilisation concurrente peut faire varier la performance.
Système de fichiers local
Ce type de stockage se fait sur chacun des nœuds de calcul auquel est attaché un disque dur local. Il présente l'avantage d'une performance élevée puisqu'il est rarement partagé; de façon générale, un seul utilisateur à la fois peut accéder à un disque local. Cependant, les fichiers doivent être copiés sur un autre média (espace scratch ou espace project) avant la complétion de la tâche parce que tout est nettoyé après chaque tâche.
Système de fichiers en mémoire vive (RAM)
Puisqu'il réside dans la mémoire vive du nœud de calcul, il y a moins de capacité de mémoire restante pour les opérations. La vitesse est très grande dans le cas de petits fichiers et surtout plus grande qu'avec les autres systèmes quand l'accès aux fichiers est aléatoire. La mémoire vive est toujours nettoyée à la fin de la tâche.

Ce tableau montre les propriétés des divers types de stockage.

Types de stockage
Type Accessibilité Débit Latence Durée
système de fichiers en réseau (NFS) tous les nœuds faible élevée long terme
système de fichiers parallèle (long terme) tous les nœuds passable élevée long terme
système de fichiers parallèle (court terme) tous les nœuds passable élevée court terme (nettoyage périodique)
système de fichiers local local pour le nœud passable moyenne très court terme
système de fichiers en mémoire local pour le nœud bon très basse très court terme (nettoyage après chaque tâche)

Débit décrit l'efficacité dans les cas de grandes opérations, par exemple celles nécessitant plus d'un mégaoctet en lecture ou écriture.

Latence décrit l'efficacité dans le cas de plusieurs petites opérations. Un faible degré de latence est privilégié; cependant, il est toujours préférable de choisir une petite quantité de grandes opérations qu'une grande quantité de petites opérations.

Meilleures pratiques

  • Utilisez uniquement des fichiers au format texte de moins de quelques mégaoctets.
  • Autant que possible, réservez le stockage local pour les fichiers temporaires; il est préférable d'utiliser le répertoire temporaire $SLURM_TMPDIR créé par l'ordonnanceur à cet effet.
  • Si le programme doit chercher à l'intérieur d'un fichier, il est plus rapide de lire le fichier au complet d'abord, ou d'utiliser un disque RAM.
  • Nettoyez régulièrement les données dans les espaces project et scratch puisque ceux-ci sont utilisés pour d'immenses collections de données.
  • Si certains fichiers non utilisés doivent être conservés, archivez-les et compressez-les et si possible, copiez-les ailleurs (voir Archiving and compressing).
  • Si les solutions de stockage offertes ne conviennent pas à vos besoins, contactez le soutien technique.

Quotas et politiques

Afin que tous les utilisateurs puissent disposer de suffisamment d'espace, des quotas et des politiques sont imposés sur les copies de sauvegarde et la purge automatique de certains systèmes de fichiers.

Sur les grappes de Calcul Canada, chaque utilisateur dispose par défaut d'un accès aux espaces home et scratch et chaque groupe dispose par défaut de 1To d'espace project. Pour une légère augmentation des espaces project et scratch, utilisez le service d'accès rapide. Pour une augmentation importante des espaces projet, faites une demande dans le cadre du concours d'allocation de ressources.

Pour connaître votre utilisation des quotas pour les systèmes de fichiers sur Cedar et Graham, utilisez la commande diskusage_report.

Caractéristiques des systèmes de fichiers
Espace Quota par défaut Basé sur Lustre Copié pour sauvegarde Purgé Disponible par défaut Monté sur des nœuds de calcul
home 50Go et 500K fichiers par utilisateur[1] Cedar, oui; Graham, non

(système de fichiers en réseau)

oui non oui oui
scratch 20To et 1M fichiers par utilisateur[2] oui non oui, les fichiers de plus de 60 jours [3]

sont purgés

oui oui
projet 1To et 500 000 fichiers par groupe[4] oui oui non oui oui
  1. Ce quota est fixe et ne peut être modifié.
  2. Présentement, l'espace scratch ne peut pas être augmenté et un quota supplémentaire de 100To par utilisateur s'applique temporairement sur Graham. Ce quota sera ramené à 20To quand une solution technique sera déployée.
  3. Selon la valeur de ctime pour le fichier (voir Espace scratch ː Purge automatique).
  4. L'espace projet peut être augmenté à 10To par groupe en recourant au service d'accès rapide. La demande doit être faite par le chercheur principal responsable pour le groupe en s'adressant au soutien technique.

</tab>

Filesystem Characteristics
Filesystem Default Quota Lustre-based? Backed up? Purged? Available by Default? Mounted on Compute Nodes?
Home Space 50 GB and 500K files per user[1] No Yes No Yes Yes
Scratch Space 100 TB and 1M files per user Yes No Files older than 60 days are purged.[2] Yes Yes
Project Space 1 TB and 500k files per group[3] Yes Yes No Yes Yes
  1. This quota is fixed and cannot be changed.
  2. See Scratch purging policy for more information.
  3. Project space can be increased to 10 TB per group by a RAS request. The group's sponsoring PI should write to technical support to make the request.
location quota block size expiration time backed up on login nodes on compute nodes
$HOME 100 GB per user 1 MB yes yes read-only
$SCRATCH 25 TB per user (dynamic per group) 16 MB 2 months no yes yes
up to 4 users per group 50TB
up to 11 users per group 125TB
up to 28 users per group 250TB
up to 60 users per group 400TB
above 60 users per group 500TB
$PROJECT by group allocation 16 MB yes yes yes
$ARCHIVE by group allocation dual-copy no no
$BBUFFER 10 TB per user 1 MB very short no yes yes

</tabs>

The backup policy on the home and project space is nightly backups which are retained for 30 days, while deleted files are retained for a further 60 days - note that is entirely distinct from the age limit for purging files from the scratch space. If you wish to recover a previous version of a file or directory, you should contact technical support with the full path for the file(s) and desired version (by date).

Pour plus d'information