Hyppää sisältöön

Docs CSC now features an automatic Finnish translation. Click here for more information.

Warning!

Puhti and Mahti will be decommissioned after Roihu becomes available. Users should clean up unnecessary files and move any required data by the end of August 2026. See the Roihu data preparation instructions for details.

Puhti scratch is very full: keep only active data there and move or delete everything else. No new Puhti scratch quota will be granted.

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 viitesekvenssijoukkoon.

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, tarjoavatko Chipsterissä käytetyt genomit sinulle valmiin indeksin genomille, jota haluat käyttää. Tämä voidaan tehdä komennolla:

chipster_genomes bwa

Jos sopivaa genomi-indeksiä ei löydy, ensimmäinen vaihe kohdistuksen tekemisessä BWA:lla on viitegenomin lataaminen 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ämän tiedoston 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ä single-end-lukujen kohdistuksen 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 esimerkki eräajotiedostosta 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 alignments
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