Données chaudes et données froides
Les données froides sont des données qui ne sont que très peu utilisées et donc très peu accédées. C’est un peu l’équivalent d’un carton de documents dans un grenier. On peut potentiellement un jour en avoir besoin, mais on ne l’ouvre quasiment jamais. On s’attend ainsi à ce que les temps de récupération de données froides soient un peu plus longs.
Au contraire, les données chaudes sont des données actives, qui sont accédées souvent, voir de façon intensive. Ainsi, les espaces de stockage dit « scratch » correspondent à des données chaudes non sauvegardées, prêtes à être exploitées par des ressources de calcul ou de traitement.
Cette notion de température des données se distingue de la notion de durée de conservation.
Stockage, sauvegarde et archivage
Il faut distinguer ces termes car il s’agit bien d’approches différentes. On parle globalement de stockage c’est-à-dire le moyen / le support / l’endroit où les données sont conservées. La sauvegarde concerne la réplication de données sur au moins deux supports distincts afin de pouvoir restaurer des données endommagées ou perdues. La sauvegarde peut aussi s’apparenter à un stockage moyen terme de données liées à des projets terminés (donc froides) mais que l’on souhaite conserver pour réutilisation ultérieure éventuelle.
L’archivage est la conservation à long terme de données numériques de façon sécurisée et pérenne, c’est-à-dire que cela s’appuie sur des processus de vérification de l’intégrité des données (et des métadonnées associées), de relecture du contenu et des métadonnées associées, et de maintien des données sur un support exploitable.
Certaines données comme les données de santé impliquent des contraintes sur leur lieu de stockage : elles doivent être localisées soit à l’endroit où elles ont été produites (les CHU hébergent leurs données propres par exemple), ou sur une infrastructure labellisée « hébergement de données de santé ».
Entrepôt de données
Un entrepôt est un répertoire de données permettant le dépôt de jeux de données pour leur mise en visibilité et leur réutilisation par des tiers. Ce dépôt se distingue de la notion d’archivage qui inscrit la donnée dans un processus de pérennisation. L’utilisation d’un entrepôt de données ne doit pas occulter la question de la durée de conservation de ces données.
Il existe de nombreux entrepôts de données, disciplinaires ou génériques (comme Zenodo par exemple).
Exploitation des données
La problématique du stockage est très souvent liée à ce qu’on veut faire des données, comment on veut les exploiter. Beaucoup d’approches sont possibles selon le type des données, leur taille, … En particulier, la catégorisation des données selon leur caractère structuré ou non structuré, c’est-à-dire des données organisées (dans une base de données, un tableau ou un fichier formaté selon une nomenclature précise) ou non organisées et complexes (textes, extraction de données du Web …) a un impact sur les outils et infrastructures à utiliser pour leur exploitation.
Quelques exemples de traitements pour des données structurées :
- Traitement ou analyse massive via l’utilisation d’infrastructures comme les grilles de calcul ou les supercalculateurs
- Utilisation d’algorithmes d’apprentissage automatique via des infrastructures à base de GPU
- Visualisation via des outils ou des infrastructures dédiés, ou consultation simple
- Utilisation d’outils spécifique via des infrastructures de cloud
Quelques exemples de traitements pour des données non structurées :
- Selon la taille des données, outils de parcours, de fouille, de visualisation qui peuvent être utilisés en local ou sur des infrastructures de type cloud, ou consultation simple
- Utilisation d’algorithmes d’apprentissage automatique via des infrastructures à base de GPU
- Utilisation d’infrastructure “big data” à base d’outils comme la suite elasticsearch ou hadoop
Tous ces usages peuvent influer sur l’endroit où l’on va stocker les données.
Volumétrie, organisation des données
Les volumétries des données à stocker sont extrêmement différentes d’un projet à l’autre. On peut actuellement commencer à parler de grosses volumétries à partir de quelques dizaines de To. Ces tailles de données complexifient en particulier les transferts des données par le réseau.
Par exemple, pour un transfert entre une plateforme de stockage située dans un datacentre de l’UGA et un portable dans un laboratoire (sur le réseau UGA), le débit du réseau est de 10 GB/s, et donc le transfert de 10 To prendra 1000 secondes soit presque 17 mn (au mieux selon la charge du réseau). C’est un cas favorable car on ne traverse pas de firewall et le nombre de routeurs traversés est le plus réduit possible, le temps sera beaucoup plus long pour le transfert sur un autre site. Le temps de transfert sera aussi fortement impacté par le nombre de fichiers, transférer un volume de 1 To composé de 10000 fichiers sera beaucoup plus long que pour un seul fichier de 1 To.
Modalités d’accès
Différentes modalités d’accès aux données sont possibles en fonction de leur lieu de stockage. Le choix du stockage va donc imposer des contraintes sur la façon dont on va pouvoir utiliser les données. Ces modalités d’accès se déclinent selon des protocoles techniques et des technologies de stockage très différents.
Il est donc important d’identifier les besoins de chaque projet avant tout choix technique :
- Comment veut-on accéder aux données ?
- Qui va accéder aux données ? Avec quels droits (lecture, modification) ?
- Que doit permettre cet accès aux données : traitement, analyse, manipulation, diffusion ?
Du point de vue de l’utilisateur, les accès possibles sont :
- Accès par le web, l’utilisateur accède à ses données directement via son navigateur.
- Accès par le réseau manuel, l’utilisateur télécharge ses données sur sa machine soit via un client graphique, soit en utilisant la ligne de commande. Il peut aussi procéder à un montage d’un lecteur réseau
- Accès automatique par le réseau (le système se charge des connexions de façon transparente), l’utilisateur voir directement ses données depuis son ordinateur