Découverte :
Que faire de nos données biologiques produites ?

What a mess par .pst (CC BY-NC-SA 2.0)

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

HP EVA 8000 par SimonPix (CC BY-NC-SA 2.0)

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 ?

Cadenas pas d'amour par Groum

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 ? 🙂

Day 278 - Choose the pill par Harsh Vardhan (CC BY-NC-SA 2.0)

 Je tiens à remercier tout particulièrement Gophys, max, Mica et Norore pour leurs relectures, leurs corrections et leurs temps.

  • À propos de
  • Je suis issu d'une licence de Biologie des Organismes et du Master de Bioinformatique de Bordeaux (Promo 2011). J'ai été bioinformaticien à l'Ecole Polytechnique Fédérale de Lausanne (EPFL) pendant 4 ans. Tout d'abord dans le laboratoire Trono puis dans le laboratoire Duboule, je fus ensuite rattaché à la plateforme de bioinformatique et de biostatistiques de l’EPFL (BBCF) où j'ai développé BioRepo, un LIMS (Laboratory Information Management System) pour les données issues de HTS. Depuis début 2015, je suis en poste en tant que Bioinformaticien/Software developer au sein de l’Institut de Recherche Technologique BIOASTER à Lyon. Enfin, j'ai l'honneur et la fierté d'être un des fondateurs/administrateurs de bioinfo-fr.net et grand supporter des Girondins de Bordeaux.

5 commentaires sur “Que faire de nos données biologiques produites ?

  1. Je suis toujours satisfait lorsque je lis vos articles.

    Pour le cloud, bien qu'il existe des inconvénients surtout sécuritaires, je pense que la personne qui n'est pas experte en sécurité informatique doit l'utiliser. Parallèlement, les entreprises de cloud font tous ce qui est en leur pouvoir pour limiter les vols, parce que c'est leur business. Il ne pourrait pas s'aviser de mettre leurs clients en danger.

    En ce qui concerne les mots de passe, il faut éviter les trucs du genre "maman" mais plûtot "mon cheval broute dans le prés" ou un ensemble de chiffres uniquement.

    Enfin, je suis sûr que le hacking est l'un des outils puissants de la bioinformatique

    • Salut Nasser.
      Ce que tu dis à propos du cloud et des entreprises spécialisées est un peu utopiste, mais c'est ta vision des choses et je la respecte.

      Pour ce qui est des mots de passe, là n'était pas la question. Rien ne sert d'avoir un mot de passe robuste si celui-ci est stocké en clair dans la base de données...

      Et enfin pour ta foi envers le "hacking" (qui reste à définir quand même) car balancé comme ça il veut un peu dire tout et n'importe quoi.
      Si tu fais allusion à ce genre de choses : http://past.is/k1zj je veux bien être d'accord avec toi, bien que je parlerai plus de prouesse technologique que de "hacking".
      Si par contre ce n'est pas ça, permets moi alors de rester un peu perplexe : on ne vit pas dans un film (Matrix, par exemple pour ne cité que lui) 🙂

      • Yoann, je suis tout à fait d'accord avec toi mais il faut savoir qu'a l'heure actuelle, tout utilisateur des nouvelles technologies doit connaitre les bases de la sécurité informatique.
        Qu'en est-il alors des acteurs proprement dits comme nous?
        Internet est une jungle et je t'assure qu'il y'a beaucoup de gens qui piratent des laboratoires.
        Hacker ne signifie pas seulement détruire: hacker c'est aussi construire.
        Je dit à haute voix que nous vivons au cœur de Matrix 🙂
        Je réserve pour celà 2 billets sur mon blog; Kaspersky a découvert le virus red october alors, faut qu'on soit sur nos gardes!
        a+
        ça sera toujours un plaisir pour moi de discuter avec vous,
        hi hi hi hi looooooollllll!!!!!!!!!

  2. Merci pour l'article ! Au passage une petite typo à corriger sur problème 4 : quelle technologie.

    • Oups... Merci 🙂 Je vais de ce pas fouetter les relecteurs 😉

Laisser un commentaire