Pipeline d’échantillon tumoral/normalTumor/Normal pipeline

Le pipeline Azure Databricks tumoral/normal est un pipeline conforme aux meilleures pratiques GATK pour l’alignement de lecture rapide et l’appel de variante somatique à l’aide de l’appelant de variante MuTect2 .The Azure Databricks tumor/normal pipeline is a GATK best practices compliant pipeline for short read alignment and somatic variant calling using the MuTect2 variant caller.

Procédure pas à pasWalkthrough

Le pipeline se compose des étapes suivantes :The pipeline consists of the following steps:

  1. Alignement normal de l’échantillon à l’aide de BWA-MEM.Normal sample alignment using BWA-MEM.
  2. Exemple d’alignement de tumeur utilisant BWA-MEM.Tumor sample alignment using BWA-MEM.
  3. Variant appelant avec MuTect2.Variant calling with MuTect2.

InstallationSetup

Le pipeline est exécuté en tant que tâche de Azure Databricks.The pipeline is run as an Azure Databricks job. Vous pouvez configurer une stratégie de cluster pour enregistrer la configuration :You can set up a cluster policy to save the configuration:

{
  "num_workers": {
    "type": "unlimited",
    "defaultValue": 13
  },
  "node_type_id": {
    "type": "unlimited",
    "defaultValue": "Standard_F32s_v2"
  },
  "spark_env_vars.refGenomeId": {
    "type": "unlimited",
    "defaultValue": "grch38"
  },
  "spark_version": {
    "type": "regex",
    "pattern": ".*-hls.*",
    "defaultValue": "7.0.x-hls-scala2.12"
  }
}
  • La configuration du cluster doit utiliser Databricks Runtime pour la génomique.The cluster configuration should use Databricks Runtime for Genomics.
  • La tâche doit être le Notebook tumoral/normal situé en bas de cette page.The task should be the tumor/normal notebook found at the bottom of this page.
  • Pour de meilleures performances, utilisez les machines virtuelles optimisées pour le calcul avec au moins 60 Go de mémoire.For best performance, use the compute optimized VMs with at least 60GB of memory. Nous vous recommandons d’utiliser des machines virtuelles Standard_F32s_v2 .We recommend Standard_F32s_v2 VMs.
  • Si vous exécutez le réétalonnage de score de qualité de base, utilisez des instances à usage général (Standard_D32s_v3) à la place, car cette opération nécessite plus de mémoire.If you’re running base quality score recalibration, use general purpose (Standard_D32s_v3) instances instead since this operation requires more memory.

ParamètresParameters

Le pipeline accepte des paramètres qui contrôlent son comportement.The pipeline accepts parameters that control its behavior. Les paramètres les plus importants et les plus couramment modifiés sont décrits ici.The most important and commonly changed parameters are documented here. Pour afficher tous les paramètres disponibles et leurs informations d’utilisation, exécutez la première cellule du bloc-notes du pipeline.To view all available parameters and their usage information, run the first cell of the pipeline notebook. De nouveaux paramètres sont régulièrement ajoutés.New parameters are added regularly. Les paramètres peuvent être définis pour toutes les exécutions ou par exécution.Parameters can be set for all runs or per-run.

ParamètreParameter DefaultDefault DescriptionDescription
manifestmanifest n/an/a Manifeste décrivant l’entrée.The manifest describing the input.
sortieoutput n/an/a Chemin d’accès où la sortie du pipeline doit être écrite.The path where pipeline output should be written.
replayModereplayMode skipskip * Si skip , les étapes seront ignorées si la sortie existe déjà.* If skip, stages will be skipped if output already exists.
* Si la overwrite sortie existante sera supprimée.* If overwrite, existing output will be deleted.
exportVCFexportVCF falsefalse Si la valeur est true, le pipeline écrit les résultats dans un fichier VCF et Delta.If true, the pipeline writes results to a VCF file as well as Delta.
perSampleTimeoutperSampleTimeout 12 h12h Délai d’expiration appliqué par échantillon.A timeout applied per sample. Une fois ce délai atteint, le pipeline continue à l’exemple suivant.After reaching this timeout, the pipeline continues on to the next sample. La valeur de ce paramètre doit inclure une unité de délai d’attente : 'pour les secondes, 'm’pour minutes ou’h’pour les heures.The value of this parameter must include a timeout unit: ‘s’ for seconds, ‘m’ for minutes, or ‘h’ for hours. Par exemple, « 60 min » entraînera un délai d’expiration de 60 minutes.For example, ‘60m’ will result in a timeout of 60 minutes.

Conseil

Pour optimiser le runtime, définissez spark.sql.shuffle.partitions dans la configuration Spark sur trois fois le nombre de cœurs du cluster.To optimize runtime, set spark.sql.shuffle.partitions in the Spark config to three times the number of cores of the cluster.

Référencer des génomesReference genomes

Vous devez configurer le génome de référence à l’aide d’une variable d’environnement.You must configure the reference genome using an environment variable. Pour utiliser GRCh37, définissez une variable d’environnement comme suit :To use GRCh37, set an environment variable like this:

refGenomeId=grch37

Pour utiliser GRCh38, remplacez grch37 par grch38 .To use GRCh38, change grch37 to grch38.

Pour utiliser un génome de référence personnalisé, consultez les instructions dans informations de référence personnalisées génomes.To use a custom reference genome, see instructions in Custom reference genomes.

Format du manifesteManifest format

Notes

Les objets BLOB de manifeste sont pris en charge dans Databricks Runtime 6,6 pour la génomique et les versions ultérieures.Manifest blobs are supported in Databricks Runtime 6.6 for Genomics and above.

Le manifeste est un fichier CSV ou un objet BLOB qui décrit où trouver les fichiers FASTQ ou BAM d’entrée.The manifest is a CSV file or blob describing where to find the input FASTQ or BAM files. Exemple :An example:

pair_id,file_path,sample_id,label,paired_end,read_group_id
HG001,*_R1_*.normal.fastq.bgz,HG001_normal,normal,1,read_group_normal
HG001,*_R2_*.normal.fastq.bgz,HG001_normal,normal,2,read_group_normal
HG001,*_R1_*.tumor.fastq.bgz,HG001_tumor,1,tumor,read_group_tumor
HG001,*_R2_*.tumor.fastq.bgz,HG001_tumor,2,tumor,read_group_tumor

Si votre entrée se compose de fichiers BAM non alignés, vous devez omettre le paired_end champ :If your input consists of unaligned BAM files, you should omit the paired_end field:

pair_id,file_path,sample_id,label,paired_end,read_group_id
HG001,*.normal.bam,HG001_normal,normal,,read_group_tumor
HG001,*.tumor.bam,HG001_tumor,tumor,,read_group_normal

Les échantillons de tumeurs et normaux pour un individu donné sont regroupés en fonction du pair_id champ.The tumor and normal samples for a given individual are grouped by the pair_id field. Les noms des exemples de tumeurs et des exemples normaux lisent les noms de groupes doivent être différents dans une paire.The tumor and normal sample names read group names must be different within a pair.

Conseil

Si le manifeste fourni est un fichier, le file_path champ de chaque ligne peut être un chemin d’accès absolu ou un chemin d’accès relatif au fichier manifeste.If the provided manifest is a file, the file_path field in each row may be an absolute path or a path relative to the manifest file. Si le manifeste fourni est un objet BLOB, le file_path champ doit être un chemin d’accès absolu.If the provided manifest is a blob, the file_path field must be an absolute path. Vous pouvez inclure des modèles glob (*) pour faire correspondre de nombreux fichiers.You can include globs (*) to match many files.

Informations supplémentaires sur l’utilisation et la résolution des problèmesAdditional usage info and troubleshooting

Le pipeline tumoral/normal partage de nombreux détails opérationnels avec les autres pipelines de Azure Databricks.The tumor/normal pipeline shares many operational details with the other Azure Databricks pipelines. Pour obtenir des informations plus détaillées sur l’utilisation, telles que la structure de format de sortie, des conseils pour l’exécution par programme, les étapes de configuration des génomes de référence personnalisés et les problèmes courants, consultez pipeline DNASeq.For more detailed usage information, such as output format structure, tips for running programmatically, steps for setting up custom reference genomes, and common issues, see DNASeq pipeline.

Notes

Le pipeline a été renommé de TNSeq à MutSeq dans Databricks Runtime 7,3 LTS pour génomique et versions ultérieures.The pipeline was renamed from TNSeq to MutSeq in Databricks Runtime 7.3 LTS for Genomics and above.

Bloc-notes MutSeq pipelineMutSeq pipeline notebook

Obtenir le notebookGet notebook

Bloc-notes TNSeq pipeline (hérité)TNSeq pipeline notebook (Legacy)

Obtenir le notebookGet notebook