Currently viewing the tag: "logiciel de Workflow"

Vous aurez noté que le tour de France de Galaxy ne visite qu’un axe Perpignan-Lyon-Paris  -loin de faire le tour de notre hexagone- on peut se réjouir de ce type d’initiatives. Galaxy en tournée un évènement dont vous trouverez quelques détails dans la suite de ce petit article…

Lors de la visite de trois villes françaises des ateliers seront tenus à Perpignan, Lyon et Paris. L’inscription est gratuite, mais l’espace est limité et l’inscription pour chaque atelier sera arrêtée dès que les salles accueillant la tournée de Galaxy seront bondées.

Le programme est disponible en suivant le lien ci-dessous :

http://wiki.g2.bx.psu.edu/Events/GalaxyTourDeFrance2012

28 mai: Perpignan

30 Mai: Lyon

1 juin: Institut Curie Amphithéatre Constant Burg, 12 rue Lhomond, 75005 Paris, France

Galaxy pour les biologistes :

9:00-12:00
Concepts de base: interface, historique, workflow
L’analyse des données NGS :  découverte de polymorphismes, ChIP-seq. ARN-seq
En utilisant votre propre instance sur Cloud
Publication de « résultats supplémentaires » à l’aide des pages de Galaxy

Galaxy pour les développeurs :

14:00-17:00
Galaxy l’architecture
Outils pour le système Galaxy, Galaxy « entrepôt d’outils »
API
Exécution des sites de production Galaxy: infrastructure, planification de « jobs », de données et de gestion des utilisateurs

Cette tournée est à l’image de Galaxy : satisfaisante pour l’utilisateur biologiste qui se sert de cette « plateforme multimodale » comme outil d’analyse au bio-informaticien et informaticien qui intègre ses propres outils à Galaxy, cet outil chéri de Gaël tient, par la communauté des personnes qui l’anime toutes ses promesses.

Cet article a pour but d’aider à la mise en place d’un serveur Galaxy en local. Il décrira également les avantages et inconvénients d’une telle approche par rapport à d’autres utilisations (Galaxy en ligne et Galaxy sur cloud).

Pour une définition de ce qu’est le logiciel de workflow Galaxy vous pouvez lire l’article précédemment posté sur ce blog ou accéder à la description PLUME du logiciel.

Préambule :

Il existe trois méthodes pour utiliser Galaxy :

> En local : c’est la méthode que nous décrirons ci-dessous

> En ligne : outre l’instance principale de Galaxy,  de multiples organismes ouvrent l’utilisation de leurs serveurs Galaxy à l’extérieur ( pour une liste exhaustive cliquer ici)

> Sur un cloud :  On utilise notre propre instance (virtuelle)  de Galaxy mais au lieu d’être déployés sur une machine locale, les « jobs » sont envoyés sur le cloud de Amazon

Chaque approche a ses avantages et ses inconvénients, nous les détaillerons plus bas.

Installation :

Un grand nombre d’indications sont extraites du tutorial d’installation de Galaxy en local, disponible, en anglais, à cette adresse – http://wiki.g2.bx.psu.edu/Admin/Get%20Galaxy.

Ce qu’il faut retenir de l’installation de Galaxy en local est qu’il est possible de mettre en place un serveur en moins de 10 minutes!

Brève Explication du processus d’installation (sous un serveur Debian – les étapes seront les même pour Ubuntu):

Ouvrir une invite de commande

– Vérifier sa version de python :

python --version

La version 2.5 (et au-delà) est suffisante pour un bon fonctionnement de Galaxy.

– Installer le système de gestion de version mercurial : la version 1.6 est suffisante. S’ il est déjà installé, vérifier votre version :

hg --version

– Télécharger l’archive dans un répertoire (par exemple « workflow ») approprié :

hg clone http://bitbucket.org/galaxy/galaxy-dist

– Lancer Galaxy! Dans le répertoire galaxy-dist :

sh run.sh --reload

Note : reload permet de fermer correctement l’application sous debian (et ubuntu)

A ce stade, le programme devrait initialiser l’application.

Vous pouvez maintenant accéder à votre serveur Galaxy à l’adresse suivante : http://localhost:8080

Bienvenue sur votre installation de Galaxy en local

Evidemment ce tutoriel est court et ne prend pas en compte la configuration plus fine de l’application. Pour plus de détails sur l’installation mais aussi sur l’utilisation je vous invite à lire (et à tester) les excellentes explications consultables sur le site de Galaxy :

http://wiki.g2.bx.psu.edu/Admin/Get%20Galaxy

http://wiki.g2.bx.psu.edu/Admin/Training/

Pour les (heureux) propriétaires d’un serveur de calcul :

http://wiki.g2.bx.psu.edu/Admin/Config/Performance/Cluster

Pour l’utilisation de Galaxy dans un environnement de production – ou si vous voulez directement installer votre serveur Galaxy en partant sur des bases solides  :

http://wiki.g2.bx.psu.edu/Admin/Config/Performance/Production%20Server

Utilisation :

Il faut savoir que Galaxy en local fait souvent un lien vers les logiciels sans que ces derniers ne soient présents « physiquement » sur votre serveur. Ainsi le mapping avec BWA ne marchera pas, à moins que vous installiez au préalable bwa sur le serveur. C’est le cas de pas mal d’outils, donc si vous rencontrez parfois des erreurs lors de l’exécution, il est fort probable qu’il vous faudra d’abord installer les outils utilisés par Galaxy.

Un des inconvénients majeurs de la version en ligne concerne la limitation de chargement de jeux de données à 2 Gb. En séquencage haut-débit cette limite est très souvent atteinte. En ligne il est possible de contourner cette limitation en chargeant ses fichiers par FTP. Mais on ne peut éviter le problème du débit (temps de transfert long) et de la confidentialité des données.

En local, cette la limitation est également fixée à 2 Gb, et il y a également la possibilité de charger ces jeux de données directement dans le logiciel, sans passer par une phase de chargement (« upload ») en installant son propre FTP. Évidement en local, le débit est fortement accéléré.

Pour ce faire, vous pouvez lire le tutoriel suivant en anglais ou suivre les indications ci-dessous :

http://wiki.g2.bx.psu.edu/Admin/Config/Upload%20via%20FTP

ou regarder la video tutoriel .

Comparaison entre les méthodes :

Comparatifs entres les différentes instances de Galaxy

Pour résumer, l’installation en local offre plusieurs avantages par rapport à la version en ligne, en terme de confidentialité, de taille de données, de transfert et de temps d’analyses. Quelques inconvénients subsistent notamment la contrainte d’investir dans une machine correcte si l’on veut obtenir un temps d’analyse correct ou la nécessité d’installer certains outils extérieurement à Galaxy.

Si l’on supprime l’aspect coût et les contraintes lors de la première installation, la solution Cloud semble la plus pertinente si l’on a pas accès à  des environnements matériels conséquents.

L’aspect « customisation » et particulièrement l’intégration de ses propres outils fera l’objet d’un prochain article.

Il y a quelques semaines, nous avions discuté de l’utilisation de logiciel de Workflow pour la bioinformatique. Il est temps de passer à la pratique en vous présentant un de ses dignes représentants : Galaxy.

Page d'accueil du site du workflow Galaxy

Le workflow Galaxy fournit un ensemble d’outils pour la manipulation et l’analyse de données génomiques. Il est très intuitif dans l’utilisation ce qui en fait une cible de choix pour le biologiste.

Il est possible d’utiliser Galaxy directement depuis le serveur. Avantage conséquent pour les bioinformaticiens il est possible d‘installer sa propre instance de serveur Galaxy, cette option fera l’objet d’un prochain post technique.

Du point de vue de l’interface graphique :

Interface principale - Workflow Galaxy

On peut également créer des workflows, les enregistrer dans un espace dédié, les partager, et les exécuter de façon automatique.

Pour exemple ce workflow de métagenomique publié gratuitement par un utilisateur de Galaxy (vous devez être connecté pour visualiser le workflow dans Galaxy)

Workflow analyse métagénomique - Galaxy

Les outils dédiés analyse de données NGS sont régulièrement mis à jour et nul doute que d’ici peu, certains seront dédiés IonTorrent.

Les tutoriels sont également très bien faits, on apprend très vite à maitriser l’environnement grâce à des dizaines de vidéos d’aides.

Galaxy offre donc la possibilité d’exécuter des analyses bioinformatiques sans effort de programmation. La version en ligne est intéressante car elle permet de se familiariser aux logiciels et d’exécuter l’analyse depuis un portable, mais la possibilité d’intégrer ces propres outils (nous y reviendrons) est indéniablement un gros avantage de la version locale.

Si nous devions citer un inconvénient, plutôt d’actualité : l’utilisateur est obligé de charger ses données en mémoire dans Galaxy, le temps de chargement peut être très long si l’on manipule des données issues d’expériences NGS. D’autres workflows tels que Ergatis, fonctionnent en local et permettent à l’utilisateur d’utiliser directement les données présentent sur l’ordinateur.

Pour en savoir plus :

La description complète du logiciel Galaxy en Français sur PLUME :

http://www.projet-plume.org/fiche/galaxy

Le Galaxy Wiki :

http://wiki.g2.bx.psu.edu/FrontPage

La publication associée :

Genome Biology - 2010

 

Constat : le séquençage, un générateur fantastique de données

Figure 1.0 : Accroissement des données insérées dans GenBank

L’explosion de la génération de données génomiques (Figure 1.0) et l’hétérogénéité de ces données entraînent inévitablement un accroissement de l’écart entre les données, les connaissances et l’information que l’on peut en extraire (Figure 1.1).

Le développement d’outils bioinformatiques permet de répondre à l’analyse de données dans l’ensemble des domaines de la biologie, mais le besoin en formalisation (des formats, des processus, des architectures matérielles…) est primordial si l’on veut éviter les problèmes d’incompatibilité et de réutilisation des solutions.

Biomedical informatics in translational research Par Hai Hu,Richard J. Mural,Michael N. Liebman

Figure 1.1 : Issu de "Biomedical informatics in translational research" Par Hai Hu,Richard J. Mural,Michael N. Liebman

 

En conséquence, afin d’obtenir des informations interprétables biologiquement à partir de ces données, la mise en place de processus d’analyse va de pair avec  l’utilisation de logiciels à jour, efficaces pour la gestion de données à grande échelle.

En outre, les logiciels doivent aussi simplifier cette gestion de données et fournir des outils d’analyses bioinformatiques accessibles mais aussi reproductibles pour tous types d’utilisateurs – dont les biologistes eux-mêmes. C’est dans ce cadre que s’insèrent l’automatisation de processus (ou « Workflow ») et le développement de « Workflow management system », ou logiciel de Workflow, pour la bioinformatique.

Workflow ou automatisation de processus : définition

Le logiciel de Workflow s’inscrit aussi dans une logique de pérennisation des processus analytiques, qui a pour but de sortir de la logique « projet » (dans le sens ponctuel) en créant des processus d’analyses génériques.

Un logiciel de Workflow est un outil permettant d’exécuter un ensemble de processus de façon automatique. Ces « pipelines » sont très présents en bioinformatique (à défaut d’être tres utilisés) car ils permettent aux chercheurs en biologie d’analyser leurs données (issues de séquencages, génotypages) de façon relativement transparente et (quasiment) sans l’aide d’informaticiens (denrées rares dans la recherche).

Toutefois, il convient de distinguer deux sortes de logiciel de Workflow :

– Les logiciels de Workflow qui permettent aux chercheurs de manipuler leurs données et exécuter leurs analyses sans posséder de connaissances en écriture de scripts ou en bases de données. Les données sont rapatriées au sein du logiciel de Workflow, permettant l’exécution d’un ensemble de tâches, à travers des modules pré-installés. En séquençage, le Workflow permet de convertir des séquences en formats divers, les filtrer  ou les assembler…  Le logiciel de Workflow ISYS (2001), BioMOBY, Taverna et plus particulièrement Galaxy (qui fera l’objet d’un prochain post ici) entrent dans cette catégorie.

– Les logiciels de Workflow qui assurent un accès direct à des composants (installés sur le serveur) et/ou aux données génomiques sans passer par un rapatriement préalable des données. WildFire, Pegasys ou Ergatis (ce dernier sera décrit dans un prochain post) font partie de cette catégorie. De manière générale ces logiciels de Workflow sont plus difficiles à prendre en main mais sont évidemment plus flexibles.

Pour résumer, quel que soit le logiciel de Workflow utilisé il permet :

– D’automatiser des processus d’analyse (idéalement répétitifs) en les reliant dans un pipeline

– De lancer des analyses sur des architectures matérielles complexes telles des grilles de calculs (voir l’article sur Grisbi) ou des serveurs

– De formaliser le processus d’analyse en vue d’une publication scientifique

Philosophie générale : interaction et exemple de workflow

Pour finir cette introduction, nous vous proposons deux schémas : la place du logiciel Workflow et un exemple concret.

 

workflow - interaction et intégration - biologistes et bioinformaticiens

Figure 1.2 : Intégration d'un logiciel de Workflow dans la recherche en biologie

Exemple de workflow
Figure 1.3 : Exemple de conception d’un Workflow d’identification de promoteurs (extrait de « Accelerating the scientific exploration process with scientific workflows« )

 

 

Set your Twitter account name in your settings to use the TwitterBar Section.