Stockage et gestion des fichiers

From Alliance Doc
Jump to navigation Jump to search
This site replaces the former Compute Canada documentation site, and is now being managed by the Digital Research Alliance of Canada.

Ce site remplace l'ancien site de documentation de Calcul Canada et est maintenant géré par l'Alliance de recherche numérique du Canada.

This page is a translated version of the page Storage and file management and the translation is 100% complete.
Other languages:

Introduction

Nous offrons de nombreuses options de stockage capables de répondre aux besoins de 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, nos systèmes de fichiers 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 une seule personne 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 Archivage et compression de fichiers.

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. Vous possédez vos propres espaces home et scratch, alors que l'espace project est partagé par le groupe de recherche. Ce groupe peut être constitué d'utilisateurs qui possèdent des comptes liés à celui du 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 à une ou plusieurs chercheuses ou 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

Pour un rapport plus détaillé, utilisez l'outil Diskusage Explorer.

Types de stockage

Nos ressources 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 notre infrastructure, quelques-unes de leurs caractéristiques et les besoins pour lesquels ils sont conçus.

  • HOME : Il peut sembler logique de stocker tous vos fichiers et d'effectuer tous vos travaux dans votre répertoire home; pourtant, le quota pour ce répertoire est relativement petit et la performance est limitée pour la lecture et l'écriture de grandes quantités de données. Ce répertoire est plus approprié pour le code source, les petits fichiers de paramètres et les scripts de soumission des tâches.
  • PROJECT : Le quota pour l'espace project est beaucoup plus grand et bien adapté au partage de données entre les membres d'un groupe puisque, contrairement à home ou scratch, il est relié à un compte de professeur et non à celui d'un utilisateur particulier. Les données enregistrées ici doivent être relativement statiques, c'est-à-dire qu'elles seront modifiées rarement au cours d'un mois; le fait de modifier souvent ces données ou de renommer ou déplacer souvent des fichiers pourrait représenter une charge trop forte pour le système de sauvegarde sur bande.
  • SCRATCH : Ce type de stockage s'avère le meilleur choix pour les opérations intensives de lecture/écriture de gros fichiers (> 100Mo par fichier). Sachez toutefois qu'il faut copier les données importantes ailleurs parce qu'il n'y a pas de copie de sauvegarde sur scratch et que les fichiers plus anciens sont susceptibles d'être purgés. Cet espace ne devrait être utilisé que pour les fichiers temporaires comme les fichiers de point de contrôle (checkpoint files), les données en sortie d'une tâche ou les autres données qui peuvent être facilement recréées. N'utilisez pas SCRATCH pour stocker tous vos fichiers. Cet espace est conçu pour les fichiers temporaires que vous pouvez perdre sans trop de conséquences.
  • SLURM_TMPDIR : Pendant qu'une tâche est en cours d'exécution, $SLURM_TMPDIR est le chemin unique vers un répertoire temporaire d'un système de fichier local rapide sur chacun des nœuds de calcul réservés pour cette tâche; ce répertoire est supprimé quand la tâche se termine. C'est le meilleur endroit où enregistrer temporairement une grande collection de petits fichiers (< 1 Mo par fichier). Les tâches partagent cet espace sur chaque nœud et la capacité disponible dépend des caractéristiques techniques de chacun. Pour plus d'information, voir Stockage local sur les nœuds de calcul.

Consommation de l'espace /project par utilisateur

Pour /home et /scratch, la commande diskusage_report donne l'utilisation de l'espace et des inodes pour chaque utilisateur alors que pour /project, elle donne plutôt le quota total du groupe, incluant donc tous les fichiers des membres. Puisque les fichiers qui appartiennent à un utilisateur peuvent se trouver partout dans /project, il est difficile d'obtenir la quantité exacte de fichiers et la quantité de fichiers par utilisateur ou par projet quand un utilisateur a accès à plusieurs projets. Une estimation de l'utilisation de l'espace et des inodes par un utilisateur dans l'espace /project total peut toutefois être obtenue avec la commande

lfs quota -u $USER /project

De plus, une estimation de la quantité de fichiers dans un répertoire (et ses sous-répertoires) peut être obtenue avec la commande lfs find, par exemple

lfs find <path to the directory> -type f | wc -l

Meilleures pratiques

  • Nettoyez régulièrement les données dans les espaces project et scratch puisque ces systèmes de fichiers sont utilisés pour d'immenses collections de données.
  • Utilisez uniquement des fichiers au format texte de moins de quelques mégaoctets.
  • Autant que possible, réservez le stockage scratch et le stockage local pour les fichiers temporaires. Pour le stockage local, vous pouvez 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.
  • Si certains fichiers non utilisés doivent être conservés, archivez-les et compressez-les et si possible, copiez-les ailleurs, par exemple dans le système de fichiers nearline.
  • Pour plus de renseignements sur la gestion d'un grand nombre de fichiers, nous recommandons la lecture de cette page, particulièrement si vous êtes limité par le quota sur le nombre de fichiers.
  • Il est possible que vous ayez des problèmes, peu importe le type d'accès parallèle en lecture à des fichiers dans un système de fichiers comme home, scratch et project; pour contrer ceci, utilisez un outil spécialisé comme MPI-IO.
  • 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 nos grappes, 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
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] oui oui non oui oui
/scratch 20To et 1M fichiers par utilisateur oui non les fichiers de plus de 60 jours sont purgés[2] oui oui
/project 1To et 500K fichiers par groupe[3] oui oui non oui oui
/nearline 2To et 5000 fichiers par groupe oui oui non oui non
  1. Ce quota est fixe et ne peut être changé.
  2. Pour plus d'information, voir la politique de purge automatique.
  3. L'espace /project 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.

À compter du 1er avril 2024, le service d’accès rapide permettra des quotas plus élevés pour les espaces /project et /nearline; pour plus d’information, voir la section Stockage dans la page web Service d'accès rapide. Si vous avez besoin de plus de stockage que ce qui est offert par le service d’accès rapide, vous devrez présenter une demande au concours annuel pour l’allocation de ressources.

Caractéristiques des systèmes de fichiers
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] non oui non oui oui
/scratch 20To et 1M fichiers par utilisateur oui non les fichiers de plus de 60 jours sont purgés[2] oui oui
/project 1To et 500K fichiers par groupe[3] oui oui non oui oui
/nearline 10To et 5000 fichiers par groupe oui oui non oui non
  1. Ce quota est fixe et ne peut être changé.
  2. Pour plus d'information, voir la politique de purge automatique.
  3. L'espace /project 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.

À compter du 1er avril 2024, le service d’accès rapide permettra des quotas plus élevés pour les espaces /project et /nearline; pour plus d’information, voir la section Stockage dans la page web Service d'accès rapide. Si vous avez besoin de plus de stockage que ce qui est offert par le service d’accès rapide, vous devrez présenter une demande au concours annuel pour l’allocation de ressources.

Caractéristiques des systèmes de fichiers
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] oui oui non oui oui
/scratch 20To et 1M fichiers par utilisateur oui non les fichiers de plus de 60 jours sont purgés[2] oui oui
/project 1To et 500K fichiers par groupe[3] oui oui non oui oui
/nearline 1To et 5000 fichiers par groupe oui oui non oui non
  1. Ce quota est fixe et ne peut être changé.
  2. Pour plus d'information, voir la politique de purge automatique.
  3. L'espace /project 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.

À compter du 1er avril 2024, le service d’accès rapide permettra des quotas plus élevés pour les espaces /project et /nearline; pour plus d’information, voir la section Stockage dans la page web Service d'accès rapide. Si vous avez besoin de plus de stockage que ce qui est offert par le service d’accès rapide, vous devrez présenter une demande au concours annuel pour l’allocation de ressources.

Quota Taille des blocs Durée Copié pour sauvegarde Sur nœuds de connexion Sur nœuds de calcul
$HOME 100Go par utilisateur 1Mo oui oui lecture seule
$SCRATCH 25To par utilisateur (dynamique pour les groupes) 16Mo 2 mois non oui oui
jusqu'à 4 utilisateurs par groupe 50To
jusqu'à 11 utilisateurs par groupe 125To
jusqu'à 28 utilisateurs par groupe 250To
jusqu'à 60 utilisateurs par groupe 400To
plus de 60 utilisateurs par groupe 500To
$PROJECT par allocation de groupe (RGR ou PPR) 16Mo oui oui oui
$ARCHIVE par allocation de groupe 2 copies non non
$BBUFFER 10To par utilisateur 1Mo très court non oui oui

Les espaces home et project sont sauvegardés chaque soir; les copies sont conservées pour 30 jours et les fichiers supprimés sont conservés pour 60 jours de plus. Remarquez que ceci est différent de l'âge limite pour la purge des fichiers de l'espace scratch. Pour récupérer une version antérieure d'un fichier ou d'un répertoire, contactez le soutien technique en mentionnant le chemin complet pour le ou les fichiers et la date de la version.

Pour plus d'information