La production de données de plus en plus massives, le développement de méthodes d’analyse de plus en plus complexes, et le nombre en constante augmentation d’outils disponibles amènent les scientifiques à développer des chaines de traitement (workflows) de plus en plus complexes. Cela constitue une opportunité unique pour extraire des connaissances scientifiques, mais pose également de nombreux problèmes.
Il devient en effet difficile de :
- Implémenter efficacement de nombreuses chaînes de traitement de données ;
- Tenir à jour une grande liste d’outils et de leurs versions ;
- Garder la trace des anciennes analyses (outils, version, données, etc.) ;
- Reproduire d’anciennes analyses ;
- Partager les workflows.
Dans cette formation, nous aborderons les notions nécessaires à l’implémentation et à l’exécution de chaînes de traitement (workflows) complexes en suivant les meilleurs pratiques : Versionning (git), Utilisation de containers (Docker, Singularity), Utilisation de systèmes de workflows (Snakemake, Nextflow) ou de Notebooks (Jupyter Notebooks), ou encore adoption de bonnes pratiques pour le développement d’outils.