You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 21 Next »

Table of Contents

Overview and Objectives

Once raw sequence files are generated (in FASTQ format) and quality-checked, the next step in most NGS pipelines is mapping to a reference genome. For individual sequences of interest, it is common to use a tool like BLAST to identify genes or species of origin. However, a typical example will have millions of reads, and a reference space that is frequently billions of bases, which BLAST and similar tools are not really designed to handle.

Thus, a large set of computational tools have been developed to quickly, and with sufficient (but NOT absolute) accuracy align each read to its best location, if any, in a reference. Even though many mapping tools exist, a few individual programs have a dominant "market share" of the NGS world. These programs vary widely in their design, inputs, outputs, and applications. In this section, we will primarily focus on two of the most versatile mappers: BWA and Bowtie2, the latter being part of the Tuxedo suite (e.g. Tophat2).

Sample Datasets

You have already worked with a paired-end yeast ChIP-seq dataset, which we will continue to use here.  The paired end data should be located at:


We will also use two additional RNA-seq datasets, which are located at:


Set up a new directory in your scratch area called 'fastq_align', and populate it with copies the following files, derived from the locations given above:

File NameDescriptionSample Illumina, First of pair, FASTQYeast ChIP-seq Illumina, Second of pair, FASTQYeast ChIP-seq
human_rnaseq.fastq.gzPaired-end Illumina, First of pair only, FASTQHuman RNA-seq
human_mirnaseq.fastq.gzSingle-end Illumina, FASTQHuman microRNA-seq
mkdir fastq_align
cd fastq_align
cp $SCRATCH/YEAST_FASTQ_AFTER_DAY_2 /corral-repl/utexas/BioITeam/core_ngs_tools/human_stuff/*rnaseq.fastq.gz .

Do a fast quality check on the two new data files like you did earlier on the yeast files, and move all files and directories that are produced from the fastQC commands into a new subdirectory called 'fastqc_out'.

cd $SCRATCH/fastq_align
mkdir fastqc_out
module load fastqc
fastqc human_rnaseq.fastq.gz
fastqc human_mirnaseq.fastq.gz
mv *fastqc* fastqc_out

Reference Genomes

Before we get to alignment, we need a genome to align to.  We will use three different references here:  the human genome (hg19), the yeast genome (sacCer3), and mirbase (v20).  Mirbase is a collection of all known microRNAs in all species, and we will use the human subset of that database as our alignment reference.  This has the advantage of being significantly smaller than the human genome, while containing all the sequences we are actually interested in.

Due to natural variation, sequencing errors, and processing issues, variation between reference sequence and sample sequence is always possible. Alignment to the human genome allows a putative "microRNA" read the opportunity to find a better alignment in a region of the genome that is not an annotated microRNA relative to the microRNA reference sequence. If this occurs, we might think that a read represents a microRNA (since it aligned in the mirbase alignment), when it is actually more likely to have come from a non-miRNA area of the genome.

These are the three reference genomes we will be using today, with some information about them (and here is information about many more genomes):

ReferenceSpeciesBase LengthContig NumberSourceDownload
Hg19Human3.1 Gbp25 (really 93)UCSCUCSC GoldenPath
SacCer3Yeast12.2 Mbp17UCSCUCSC GoldenPath
MirbaseV20Human160 Kbp1908MirbaseMirbase Downloads

Searching genomes, however, is hard work and takes a long time if done on an un-indexed, linear genomic sequence.  So, most aligners require that references be indexed for quick access  The aligners we are using each require a different index, but use the same method (the Burrows-Wheeler Transform) to get the job done.  This requires taking a FASTA file as input, with each chromosome (or contig) as a separate entry, and producing some aligner-specific set of files as output.  Then, those output files are used by the aligner when executing a given alignment command. Hg19 is way too big for us to index here, so we're not going to do it, and it's not included in the core_ngs_tools directory at Corral that we've been copying from.  Instead, all hg19 index files are located at:


Now, we're going to grab the other two references, and we will build each index right before we use it in each set of exercise below.  These two references are located at:


Now, stage the yeast and mirbase reference fasta files in your scratch area in a directory called 'references'.

cp -r /corral-repl/utexas/BioITeam/core_ngs_tools/references/*.fa $SCRATCH/

With that, we're ready to get started on the first exercise.


Exercise #1: BWA - Yeast ChIP-seq


OptionEffectBest Practice Setting


Exercise #2: Bowtie2 and Local Alignment - Human microRNA-seq


Exercise #3: BWA-MEM (and Tophat2) - Human mRNA-seq


Future Directions


  • No labels