Hyppää sisältöön

A new version of SD Connect and SD Desktop will be available from Monday, September 28. The major upgrade will introduce significant improvements, but also includes changes that are not compatible with the current version of the service. Click here to review the available support materials.

Warning!

Puhti and Mahti computing services have been decommissioned and no new jobs are accepted or executed on its compute nodes. Puhti and Mahti login nodes and storage services are planned to remain available until 15 October 2026. Clean up unnecessary files and move any data you need to keep by 31 August 2026. See the Roihu data migration guide for instructions on transferring your data to Roihu.

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 pituisten kyselysekvenssien kanssa. Kahta muuta algoritmia käytetään pidemmille luvuille aina noin 100 kbp:iin asti. BWA-MEM:iä suositellaan yli 70 bp:n pituisille luvuille. Kaikki algoritmit tekevät aukollisen kohdistuksen.

BWA:ta voidaan käyttää sekä yksittäispääteisten että paripääteisten lukujen kohdistamiseen viitegenomiin tai viitesekvenssijoukkoon.

Lisenssi

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

Saatavuus

  • Roihu: 0.7.19, bio-apps-moduulin kautta.

Käyttö

BWA on osa Roihun bio-apps -kokoelmaa. Lataa ensin bio-apps-moduulipuu ja sitten BWA-moduuli:

module load bio-apps/v202603
module load bwa/0.7.19

BWA-komentojen perussyntaksi on:

bwa <command> [options]

BWA-indeksit

Ensimmäinen vaihe BWA-kohdistuksessa on viitegenomin lataaminen ja sen indeksointi. Huomaa, että $HOME-hakemistosi on usein liian pieni kokonaisten genomien käsittelyyn; analyysi kannattaa tehdä sen sijaan projektisi scratch-hakemistossa.

Lataa viitegenomi (esimerkiksi wget-komennolla) scratch-hakemistoosi ja laske sille sitten BWA-indeksit:

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

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

Yksittäispääteinen kohdistus

Kun indeksointi on valmis, voit tehdä yksittäispääteisten 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 bwa samse -komennolla:

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

Paripääteinen kohdistus

Jos käytät MEM-algoritmia, voit tehdä paripääteisen 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 bwa sampe -komennolla:

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

Esimerkkieräajokomentosarja

BWA-ajot tulee suorittaa eräajoina. Alla on esimerkki eräajokomentosarjasta BWA-ajon suorittamiseen Roihussa:

#!/bin/bash
#SBATCH --job-name=bwa
#SBATCH --output=output_%j.txt
#SBATCH --error=errors_%j.txt
#SBATCH --account=<project>
#SBATCH --partition=small
#SBATCH --time=12:00:00
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=8
#SBATCH --mem-per-cpu=4000M

module load bio-apps/v202603
module load bwa/0.7.19

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

# Run the alignment
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. Ajon enimmäiskesto on kaksitoista tuntia (--time=12:00:00). Kaikki ytimet varataan yhdeltä laskentasolmulta (--nodes=1). Korvaa <project> omalla CSC-projektillasi (esimerkiksi project_2001234).

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

sbatch batch_job_file.sh

Katso lisätietoja eräajojen suorittamisesta sivulta eräajokomentosarjan luominen Roihulle.

Tuki

CSC:n asiakastuki

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