MetaPhlAn/fr: Difference between revisions

From Alliance Doc
Jump to navigation Jump to search
(Created page with "'''Important :''' La b ase de données doit se trouver dans <tt>$SCRATCH</tt>.")
No edit summary
 
(14 intermediate revisions by the same user not shown)
Line 1: Line 1:
<languages />
<languages />
MetaPhlAn is a "computational tool for profiling the composition of microbial communities (Bacteria, Archaea and Eukaryotes) from metagenomic shotgun sequencing data (i.e. not 16S) with species-level. With StrainPhlAn, it is possible to perform accurate strain-level microbial profiling", according to its [https://github.com/biobakery/MetaPhlAn GitHub repository]. While the software stack on our clusters does contain modules for a couple of older versions (2.2.0 and 2.8) of this software, we now expect users to install recent versions using a [[Python#Creating_and_using_a_virtual_environment | Python virtual environment]].
[https://github.com/biobakery/MetaPhlAn MetaPhlAn] est un outil informatique permettant de profiler la composition des communautés microbiennes (bactéries, archées et eucaryotes) à partir de données de séquençage métagénomique (c'est-à-dire non 16S) au niveau de l'espèce. Avec StrainPhlAn, il est possible d'effectuer un profilage microbien précis au niveau de la souche. Bien que la pile logicielle de nos grappes contienne des modules pour quelques versions plus anciennes (2.2.0 et 2.8), nous attendons désormais des utilisateurs qu'ils installent les versions récentes à l'aide d'un [[Python/fr#Créer_etd_utiliser_un_environnement_virtuel | environnement virtuel Python]].


Pour plus d'information, voir [https://github.com/biobakery/MetaPhlAn/wiki/MetaPhlAn-4 le site wiki de MetaPhlan].
Pour plus d'information, voir [https://github.com/biobakery/MetaPhlAn/wiki/MetaPhlAn-4 le site wiki de MetaPhlan].
Line 15: Line 15:
}}
}}


= Downloading databases =
= Télécharger les bases de données =
Note that MetaPhlAn requires a set of databases to be downloaded into the <tt>$SCRATCH</tt>.
MetaPhlAn exige qu'un ensemble de bases de données soit téléchargé dans  <tt>$SCRATCH</tt>.


'''Important :''' La b ase de données doit se trouver dans  <tt>$SCRATCH</tt>.
'''Important :''' La base de données doit se trouver dans  <tt>$SCRATCH</tt>.


Téléchargez les bases de données à partir de[http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases Segatalab FTP].
Téléchargez les bases de données à partir de[http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases Segatalab FTP].


1. From a login node, create the data folder:
1. À partir d'un nœud de connexion, créez le répertoire pour les données.
{{Commands
{{Commands
|export DB_DIR{{=}}$SCRATCH/metaphlan_databases
|export DB_DIR{{=}}$SCRATCH/metaphlan_databases
Line 29: Line 29:
}}
}}


2. Download the data:
2. Téléchargez les données.
{{Command
{{Command
|parallel wget ::: http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases/mpa_vJan21_CHOCOPhlAnSGB_202103.tar http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases/mpa_vJan21_CHOCOPhlAnSGB_202103_marker_info.txt.bz2 http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases/mpa_vJan21_CHOCOPhlAnSGB_202103_species.txt.bz2
|parallel wget ::: http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases/mpa_vJan21_CHOCOPhlAnSGB_202103.tar http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases/mpa_vJan21_CHOCOPhlAnSGB_202103_marker_info.txt.bz2 http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases/mpa_vJan21_CHOCOPhlAnSGB_202103_species.txt.bz2
}}
}}
Note that this step '''cannot''' be done from a compute node but must be done from a login node.
'''Remarque''' ː Cette étape doit se faire à partir d'un nœud de connexion et non à partir d'un nœud de calcul.


3. Extract the downloaded data, for example using an interactive job:
3. Faites l'extraction des données téléchargées en utilisant par exemple une tâche interactive.
{{Command
{{Command
|salloc --account{{=}}<your account> --cpus-per-task{{=}}2 --mem{{=}}10G
|salloc --account{{=}}<your account> --cpus-per-task{{=}}2 --mem{{=}}10G
}}
}}
Untar and unzip the databases:
Décompressez les bases de données.
{{Commands
{{Commands
| tar -xf mpa_vJan21_CHOCOPhlAnSGB_202103.tar
| tar -xf mpa_vJan21_CHOCOPhlAnSGB_202103.tar
Line 45: Line 45:
}}
}}


= Running MetaPhlAn =
= Utiliser MetaPhlAn =
Once the database files have been downloaded and extracted, you can submit a job. You may edit the following job submission script  
Une fois que les fichiers des bases de données ont été téléchargés et extraits, vous pouvez soumettre une tâche. Le script suivant peut servir d'exemple ː
according to your needs:
{{File
{{File
   |name=metaphlan-job.sh
   |name=metaphlan-job.sh
Line 59: Line 58:
#SBATCH --mem=15G                # requires at least 15 GB of memory
#SBATCH --mem=15G                # requires at least 15 GB of memory


# Load the required modules
# Chargez les modules requis.
module load gcc blast samtools bedtools bowtie2 python/3.10
module load gcc blast samtools bedtools bowtie2 python/3.10


# Move to the scratch
# Allez au scratch
cd $SCRATCH
cd $SCRATCH


DB_DIR{{=}}$SCRATCH/metaphlan_databases
DB_DIR{{=}}$SCRATCH/metaphlan_databases


# Generate your virtual environment in $SLURM_TMPDIR
# Générez votre enironnement virtuel dans $SLURM_TMPDIR
virtualenv --no-download ${SLURM_TMPDIR}/env
virtualenv --no-download ${SLURM_TMPDIR}/env
source ${SLURM_TMPDIR}/env/bin/activate
source ${SLURM_TMPDIR}/env/bin/activate


# Install metaphlan and its dependencies
# Installez metaphlan et ses dépendances.
pip install --no-index --upgrade pip
pip install --no-index --upgrade pip
pip install --no-index metaphlan==X.Y.Z  # EDIT: the required version here, e.g. 4.0.3
pip install --no-index metaphlan==X.Y.Z  # EDIT: the required version here, e.g. 4.0.3


# Reuse the number of core allocated to our job from `--cpus-per-task=4`
# Réutilisez le nombre de cœurs (<tt>--cpus-per-task=4</tt>) alloués à votre tâche.
# It is important to use --index and --bowtie2db so that MetaPhlAn can run inside the job
# Il est important d'utiliser <tt>--index</tt> et <tt>--bowtie2db</tt> pour que MetaPhlAn soit exécuté à l'intérieur de la tâche.
metaphlan metagenome.fastq --input_type fastq -o profiled_metagenome.txt --nproc $SLURM_CPUS_PER_TASK --index mpa_vJan21_CHOCOPhlAnSGB_202103 --bowtie2db $DB_DIR --bowtie2out metagenome.bowtie2.bz2
metaphlan metagenome.fastq --input_type fastq -o profiled_metagenome.txt --nproc $SLURM_CPUS_PER_TASK --index mpa_vJan21_CHOCOPhlAnSGB_202103 --bowtie2db $DB_DIR --bowtie2out metagenome.bowtie2.bz2
}}
}}

Latest revision as of 20:16, 28 November 2022

Other languages:

MetaPhlAn est un outil informatique permettant de profiler la composition des communautés microbiennes (bactéries, archées et eucaryotes) à partir de données de séquençage métagénomique (c'est-à-dire non 16S) au niveau de l'espèce. Avec StrainPhlAn, il est possible d'effectuer un profilage microbien précis au niveau de la souche. Bien que la pile logicielle de nos grappes contienne des modules pour quelques versions plus anciennes (2.2.0 et 2.8), nous attendons désormais des utilisateurs qu'ils installent les versions récentes à l'aide d'un environnement virtuel Python.

Pour plus d'information, voir le site wiki de MetaPhlan.

Wheels disponibles

Pour connaître les wheels disponibles, utilisez la commande avail_wheels.

Question.png
[name@server ~]$ avail_wheels metaphlan --all-versions
name       version    python    arch
---------  ---------  --------  -------
MetaPhlAn  4.0.3      py3       generic
MetaPhlAn  3.0.7      py3       generic

Télécharger les bases de données

MetaPhlAn exige qu'un ensemble de bases de données soit téléchargé dans $SCRATCH.

Important : La base de données doit se trouver dans $SCRATCH.

Téléchargez les bases de données à partir deSegatalab FTP.

1. À partir d'un nœud de connexion, créez le répertoire pour les données.

[name@server ~]$ export DB_DIR=$SCRATCH/metaphlan_databases
[name@server ~]$ mkdir -p $DB_DIR
[name@server ~]$ cd $DB_DIR


2. Téléchargez les données.

Question.png
[name@server ~]$ parallel wget ::: http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases/mpa_vJan21_CHOCOPhlAnSGB_202103.tar http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases/mpa_vJan21_CHOCOPhlAnSGB_202103_marker_info.txt.bz2 http://cmprod1.cibio.unitn.it/biobakery4/metaphlan_databases/mpa_vJan21_CHOCOPhlAnSGB_202103_species.txt.bz2

Remarque ː Cette étape doit se faire à partir d'un nœud de connexion et non à partir d'un nœud de calcul.

3. Faites l'extraction des données téléchargées en utilisant par exemple une tâche interactive.

Question.png
[name@server ~]$ salloc --account=<your account> --cpus-per-task=2 --mem=10G

Décompressez les bases de données.

[name@server ~]$ tar -xf mpa_vJan21_CHOCOPhlAnSGB_202103.tar
[name@server ~]$ parallel bunzip2 ::: *.bz2


Utiliser MetaPhlAn

Une fois que les fichiers des bases de données ont été téléchargés et extraits, vous pouvez soumettre une tâche. Le script suivant peut servir d'exemple ː

File : metaphlan-job.sh

#!/bin/bash

#SBATCH --account=def-someuser
#SBATCH --time=01:00:00
#SBATCH --cpus-per-task=4        # Number of cores
#SBATCH --mem=15G                # requires at least 15 GB of memory

# Chargez les modules requis.
module load gcc blast samtools bedtools bowtie2 python/3.10

# Allez au scratch
cd $SCRATCH

DB_DIR=$SCRATCH/metaphlan_databases

# Générez votre enironnement virtuel dans $SLURM_TMPDIR
virtualenv --no-download ${SLURM_TMPDIR}/env
source ${SLURM_TMPDIR}/env/bin/activate

# Installez metaphlan et ses dépendances.
pip install --no-index --upgrade pip
pip install --no-index metaphlan==X.Y.Z  # EDIT: the required version here, e.g. 4.0.3

# Réutilisez le nombre de cœurs (<tt>--cpus-per-task=4</tt>) alloués à votre tâche.
# Il est important d'utiliser <tt>--index</tt> et <tt>--bowtie2db</tt> pour que MetaPhlAn soit exécuté à l'intérieur de la tâche. 
metaphlan metagenome.fastq --input_type fastq -o profiled_metagenome.txt --nproc $SLURM_CPUS_PER_TASK --index mpa_vJan21_CHOCOPhlAnSGB_202103 --bowtie2db $DB_DIR --bowtie2out metagenome.bowtie2.bz2


Soumettez ensuite la tâche à l'ordonnanceur.

Question.png
[name@server ~]$ sbatch metaphlan-job.sh