Qu'on soit affilié à un laboratoire de génomique, d'imagerie ou encore de protéomique nous avons tous un point commun : nous devons avoir un moyen fiable et dont la pérennité ne laisse pas à désirer pour ce qui est de la gestion de nos données produites/recueillies.
Les vieux sages vous diront, à juste titre, qu'il n'existe pas de meilleur moyen pour garantir le stockage de nos connaissances que de les graver sur des blocs de pierres et de les stocker dans un bunker à 50 mètres de profondeur. Mais pour ce qui est des types de données produites en bioinformatique, ce n'est malheureusement pas réalisable : nous n'aurions pas assez de pierres… (et très vite mal aux mains)
La première des choses à faire quand on se lance dans un projet de gestion de données d'un laboratoire est de faire le point sur les types de données qui sont/seront produites, leurs quantités, leurs évolutions à venir ainsi que leurs sensibilités. Ainsi il est tout de suite plus évident de voir vers quoi il faudra se tourner.
Problème numéro 1 : le choix du système de stockage
À l'heure où l'on vante les avantages du "cloud" (prononcé "Claude", tout le monde vous comprendra vous verrez) est-ce réellement LA solution pour nos données de bioinformaticiens ?
À mon sens non. Pourquoi ? Les données produites sont tellement nombreuses et volumineuses que le coût (avec les grilles de tarifs actuelles , en prenant Amazon comme exemple) serait beaucoup plus important que l'autre solution : la solution hardware maison.
Deuxième argument, si on imagine que vous travaillez en Suisse, au Luxembourg ou encore à Monaco et que pour votre laboratoire l'argent n'est pas un soucis premier : le cloud n'en est qu'à ses débuts, et n'est pas non plus la solution ultime. Vous souvenez vous de Megaupload ? Quid des données des utilisateurs maintenant ? Bien sûr c'est un exemple sorti totalement du contexte je vous l'accorde. En effet, je doute que vous vous amusiez à stocker vos films de vacances et autres musiques sur le service cloud du boulot (quoique…). Mais si par exemple l'entreprise vous fournissant le service venait à disparaître ? Que se passerait-il ? D'un jour à l'autre vous auriez tout perdu. Ça peut paraître assez tiré par les cheveux, mais ça reste totalement plausible. À vous après de vous faire votre propre opinion.
Et enfin dernier argument, et pas le moins pertinent : sur le cloud, vos données sont "vulnérables". Nul n'est à l’abri d'un vol de contenu, si ces données sont par exemple classées sensibles ou "top-secret".
Pour au moins une de ces raisons (ou toutes) nous irons donc dans le sens de la solution "hardware".
Problème numéro 2 : le coût du hardware
Bien souvent la donnée critique sera l'espace de stockage. Non pas parce que la technologie ne permet pas de suivre à ce niveau là, mais plus en raison du coût de l'octet. Comment ça ? Dans ma grande surface préférée on me vend un disque dur de 1 To pour la modeste somme de 100 euros tout au plus, ce n'est pas la mer à boire que de débloquer un fond de 5000 euros par exemple ! Oui, mais le problème c'est qu'en raisonnant comme ça, on raisonne mal.
En effet, l'infrastructure nécessaire pour une telle machine n'est pas exactement la même que celle qu'on pourra nous proposer dans le commerce grand public. Il ne s'agira pas de brancher une cinquantaine de disques durs à la volée sur un CPU et de claquer des doigts pour que ça marche. Non. À ce niveau là, on parlera plutôt de baie de stockage et de réseau de stockage (SAN). Chaque baie pourra contenir plusieurs disques dur et si vous voulez avoir plusieurs baies il vous faudra les relier à un SAN. Votre baie ou votre SAN devra être relié à l'infrastructure informatique de votre laboratoire. Si vous partez de zéro, premièrement bon courage, et ensuite cet article vous aidera à monter votre propre serveur avec vos petites mains tout en économisant de l'argent que vous pourrez investir dans une baie, voire même plusieurs.
Pour vous donner une échelle des prix actuels, une baie (sans les disques durs) est accessible pour environ 10 000 €. Vous pourrez vous orienter vers un choix dit "low cost" qui à première vue vous fera économiser quelques 5000 € (en comptant 8 disques de 1To, qui ne sont pas livrés avec la baie citée). Mais vous risquez de vite déchanter : les faits sont là, en moyenne on perd environ un disque par an. Sur le papier la plupart ont une durée de vie de 5 ans, mais ce n'est pas toujours le cas. Vous arriverez donc vite aux 10 000 € de l'autre solution, voire plus. Comptez également le temps de paramétrage de votre système de stockage avec votre serveur maison (ou non) qui n'est pas négligeable. Mais rien d'insurmontable, je vous rassure.
Une autre chose à prendre en compte : l'évolution de votre système de stockage. Il ne faut pas oublier de demander aux vendeurs jusqu'à quel point votre capacité de stockage est évolutive. Toutes les baies proposées ne sont pas forcément expansibles à l'infini, sachez-le.
Vous l'aurez compris, ce ne sont pas les disques qui coûtent le plus, mais bel et bien la/les baie(s). C'est pour cela qu'il est très important de bien jauger ses besoins futurs et actuels avant de se lancer dans les achats.
Il vous faudra ensuite (ou avant selon les types de baies qui n'acceptent pas tous les types de RAID) choisir la méthode de sauvegarde que vous désirez appliquer à vos données. Dans le jargon on appelle donc ça des "RAID". Je ne vais pas me lancer dans une grande explication, mais retenez qu'il existe trois types standards de RAID : le RAID0, le RAID1 et le RAID5. Tous ont une propriété différente en terme de backup de vos données, je vous invite à cliquer sur les liens proposés pour les découvrir et comprendre en quoi ces différences ont leurs importances et ne doivent pas être sous-estimées.
Problème numéro 3 : comment organiser ses données ?
Alors là, chaque laboratoire aura sa solution, il n'en existe pas d'unique. C'est ça aussi l'avantage d'un système maison : on peut le personnaliser comme bon nous semble. Vous pourrez ranger vos données par type d’expérience ou bien par utilisateur ou encore même en prenant en compte ces deux critères en même temps. Les options ne manquent pas et je ne vais pas me lancer dans une liste exhaustive, elle serait bien trop longue. Encore une fois, il faudra être très prudent à l'imagination de la base de données et penser à ce que ça pourrait devenir dans 5 ans (enfin ça c'est sur le papier, parce qu'en réalité c'est très compliqué de voir le futur). Essayez de vous fermer le moins de portes que possible et de laisser une possibilité en bout de chaque table. Qui n'a en effet jamais été contraint de rajouter un champ voire une table oublié à la dernière minute ? Ce n'est jamais plaisant et c'est pour ça que si on peut éviter ce genre de situation… autant se donner toutes les cartes en main !
Problème numéro 4 : quelle technologie choisir ?
Encore une fois, là aussi le choix est immense. Tout dépendra de ce que vous voulez au final, de ce qu'on vous accorde, de ce que vous savez/saurez faire, du temps qu'on vous donnera pour ce projet, de l'effectif alloué dessus… Bref pas mal de composantes qui font que l'équation peut varier énormément.
A titre d'exemple, pour un gestionnaire de données stockées sur un serveur et accessible de par le web (ou simplement en intranet) mon choix se porte sur une plateforme tel que Turbogears, Django ou en encore Ruby on Rails pour les non-pythoniens. L'avantage de ces outils c'est qu'ils vous mâchent une grande partie du travail, vous n'aurez généralement pas trop à mettre les mains dans le cambouis si vous en restez à une utilisation simple comme eux l'entendent. Il y aura toujours les éternels insatisfaits, et là il faudra aller plus en profondeur et se remonter les manches pour coder ce qui selon vous manque à ces usines à gaz.
Problème numéro 5 : comment sécuriser tout ça ?
Comme dit en introduction, l'inviolabilité sur internet n'existe pas. Alors on va quand même éviter de tomber dans la paranoïa et se dire qu'il peut quand même être utile de protéger un tant soit peu ce qui va être entreposé dans notre hangar virtuel. Il y a ceux qui ont déjà un système de sécurité propre à leur laboratoire (comme Téquila par exemple pour l'EPFL) et dans ce cas autant ne pas réinventer la roue et se servir de ce qui existe déjà. De toute façon, je pense que ça vous sera fortement conseillé, du moins j'ose l’espérer. Et il y a ceux pour qui tout reste à faire.
Pour cette deuxième catégorie de personne, le seul conseil que je vous donnerai peut paraitre un peu simpliste, mais tellement important : ne stockez pas les mots de passe en clair dans votre base de données. Plusieurs méthodes d'encryption sont aujourd'hui connues et utilisables (MD5, SHA1, …) alors pourquoi s'en priver ? Un petit salage des mots de passe cryptés sera des plus honorable également. Je ne suis pas expert en sécurité informatique non plus, donc mes petits conseils pour cette section s’arrêteront là. Si vous connaissez d'autres méthodes plus sûres et pas trop compliquées à mettre en place, n'hésitez pas à les faire connaitre par le biais des commentaires 🙂
Une fois que votre système dispose d'un système d'authentification, il vous faudra penser a qui pourra accéder à quoi. Plusieurs cas existent : tout le laboratoire peut voir les données de tout le monde, le chef de labo est le seul (avec l'administrateur) à pouvoir avoir accès à tout ce qu'il y a dans la base de donnée, ou encore le groupe X peut interagir avec le groupe Y mais pas avec le groupe Z. L'accès peut-il se faire depuis l'extérieur du laboratoire ? Bref, de bons casses-têtes en perspective. Si rien ne vous est imposé de ce coté là, mon conseil : keep it simple* (*faites au plus simple) ! Mais cela ne veut pas dire qu'il faudra passer cette étape sous silence au moment des réunions, je vous vois venir 😉
Problème numéro 6 : et si tout cela était trop compliqué ?
Et si le temps ne jouait pas en votre faveur ? Et si vous ne vous sentez pas de vous lancer dans un chantier comme ce qui vous a été décrit ?
Pas de panique, des dizaines de solutions existent déjà. Des gratuites comme des payantes. Il y en a pour tout les goûts. Une simple recherche Google vous apportera des dizaines d'exemples et c'est à la portée de n'importe qui. Mais dites-vous bien que vous ne trouverez peut-être pas exactement ce que vous voulez.
Il faut savoir faire des choix et en assumer les conséquences. Et vous, quel sera le vôtre ? 🙂
Je tiens à remercier tout particulièrement Gophys, max, Mica et Norore pour leurs relectures, leurs corrections et leurs temps.
Laisser un commentaire