Hyppää sisältöön

Welcome to our weekly research support coffee hour on Zoom! Click here for more information.

Warning!

Puhti scratch disk is becoming very full (80+ % ) resulting in performance degradation. Everybody is advised to only keep actively processed data on scratch, all other data should be deleted, transferred to host institute or stored in Lumi-O. No new quota will be granted. Click here for a tool for examining your disk usage.

BWA

Burrows-Wheeler Aligner (BWA) on tehokas ohjelma, joka kohdistaa suhteellisen lyhyitä nukleotidisekvenssejä pitkää viitesekvenssiä, kuten ihmisen genomia, vasten. Se toteuttaa kolme algoritmia: BWA-MEM (mem), BWA-Backtrack (aln) ja BWA-SW (bwasw). BWA-Backtrack toimii alle 200 emäsparin pituisille kyselysekvensseille. Kahta muuta algoritmia käytetään pidemmille luvuille aina noin 100 kbp:iin asti. BWA-MEM:iä suositellaan yli 70 gb:n pituisille luvuille. Kaikki algoritmit tekevät aukollisen kohdistuksen.

BWA:ta voidaan käyttää sekä single-end- että paired-end-lukujen kohdistamiseen viitegenomiin tai sekvenssijoukkoon.

Lisenssi

Vapaasti käytettävissä ja avointa lähdekoodia GNU GPLv3 -lisenssillä.

Saatavuus

  • Puhti: 0.7.17
  • Chipster -graafinen käyttöliittymä

Käyttö

Puhdissa BWA voidaan ottaa käyttöön osana biokit-moduulikokoelmaa:

module load biokit

Biokit-moduulit ottavat käyttöön joukon yleisesti käytettyjä bioinformatiikan työkaluja, mukaan lukien BWA:n. Huomaa kuitenkin, että Puhdissa on myös muita bioinformatiikan työkaluja, joilla on erilliset käyttöönottokomennot.

BWA-komentojen perussyntaksi on:

bwa <command> [options]

BWA-indeksit

CSC ei ylläpidä valmiiksi käännettyjä BWA-indeksejä viitegenomeille Puhdissa, mutta voit tarkistaa, voisivatko Chipsterissä käytetyt genomit tarjota valmiin indeksin genomille, jota haluat käyttää. Tämä onnistuu komennolla:

chipster_genomes bwa

Jos sopivaa genomi-indeksiä ei löydy, ensimmäinen vaihe kohdistuksen tekemisessä BWA:lla on viitegenomin lataaminen Poutaan ja sen indeksointi. Huomaa, että $HOME-hakemistosi on usein liian pieni kokonaisten genomien käsittelyyn. Sen sijaan analyysi kannattaa tehdä Puhti-projektisi scratch-hakemistossa.

Voit käyttää esimerkiksi komentoa ensemblfetch tai wget viitegenomin lataamiseen Puhtiin. Esimerkiksi:

ensemblfetch homo_sapiens

Yllä oleva komento hakee ihmisen genomisekvenssin tiedostoon nimeltä Homo_sapiens.GRCh38.dna.toplevel.fa. Voit laskea tälle tiedostolle BWA-indeksit komennolla:

bwa index -a bwtsw Homo_sapiens.GRCh38.dna.toplevel.fa

Huomaa, että pienille, alle 2 GB:n viitegenomeille voit käyttää nopeampaa "is"-indeksointialgoritmia (bwa index -a is)

Single-end-kohdistus

Kun indeksointi on valmis, voit tehdä kohdistuksen single-end-luvuille komennolla:

bwa mem Homo_sapiens.GRCh38.dna.toplevel.fa reads.fastq > aln.sam

Jos haluat käyttää aln-algoritmia (BWA-Backtrack), kohdistus täytyy tehdä kahdessa vaiheessa.

Laske ensin varsinainen kohdistus:

bwa aln Homo_sapiens.GRCh38.dna.toplevel.fa reads.fastq > aln_sa.sai

Tulostiedosto on BWA:n omaa .sai-muotoa, jonka voit muuntaa SAM-muotoon komennolla bwa samse:

bwa samse Homo_sapiens.GRCh38.dna.toplevel.fa aln_sa.sai reads.fastq > aln.sam

Paired-end-kohdistus

Jos käytät MEM-algoritmia, voit tehdä paired-end-kohdistuksen yhdellä komennolla:

bwa mem Homo_sapiens.GRCh38.dna.toplevel.fa read1.fq read2.fq > aln.sam

BWA-Backtrack-algoritmin tapauksessa sinun tulee ensin tehdä erillinen kohdistusajo kummallekin lukutiedostolle:

bwa aln Homo_sapiens.GRCh38.dna.toplevel.fa reads1.fq > aln1.sai
bwa aln Homo_sapiens.GRCh38.dna.toplevel.fa reads2.fq > aln2.sai

Nämä kaksi .sai-kohdistustiedostoa yhdistetään komennolla bwa sampe:

bwa sampe Homo_sapiens.GRCh38.dna.toplevel.fa aln1.sai aln2.sai reads1.fq reads2.fq > aln.sam

BWA-eräajojen suorittaminen Puhdissa

Puhdissa BWA-ajot tulee suorittaa eräajoina. Alla on esimerkkieräajotiedosto BWA-ajon suorittamiseen Puhdissa:

#!/bin/bash
#SBATCH --job-name=bwa
#SBATCH --output=output_%j.txt
#SBATCH --error=errors_%j.txt
#SBATCH --time=12:00:00
#SBATCH --ntasks=1
#SBATCH --nodes=1  
#SBATCH --cpus-per-task=8
#SBATCH --mem=32000
#SBATCH --account=your_project_name

#load the bio tools
module load biokit

# Index the reference genome
bwa index -a bwtsw Homo_sapiens.GRCh38.dna.toplevel.fa

# Run the alignnments
bwa mem -t $SLURM_CPUS_PER_TASK Homo_sapiens.GRCh38.dna.toplevel.fa reads1.fq reads2.fq > aln.sam

Yllä olevassa eräajoesimerkissä suoritetaan yksi BWA-tehtävä (--ntasks=1). BWA-ajo käyttää 8 ydintä (--cpus-per-task=8) ja yhteensä 32 GB muistia (--mem=32000). Ajon enimmäiskesto on kaksitoista tuntia (--time 12:00:00). Kaikki ytimet varataan yhdeltä laskentasolmulta (--nodes=1). Resurssivarausten lisäksi sinun täytyy määrittää eräajollesi laskutusprojekti. Tämä tehdään korvaamalla your_project_name projektisi nimellä. Voit käyttää komentoa csc-projects nähdäksesi, mitä projekteja sinulla on Puhdissa.

Voit lähettää eräajotiedoston eräajojärjestelmään komennolla:

sbatch batch_job_file.bash

Katso lisätietoja eräajojen suorittamisesta Puhdin käyttöoppaasta.

Lisätietoja

Lisätietoja BWA:sta löytyy seuraavista lähteistä:

Suomenkielinen tekoälykäännös

Sisällössä voi esiintyä virheellistä tietoa tekoälykäännöksestä johtuen.

Klikkaa tästä antaaksesi palautetta