In bioinformatics, Basic Local Alignment Search Tool, or BLAST, is an algorithm for comparing biological sequences, such as the amino-acid sequences of different proteins or the DNA sequences. Given a library or database of sequences, a BLAST search enables a researcher to look for sequences that resemble a given sequence of interest. For example, following the discovery of a previously unknown gene in the mouse, a scientist typically will perform a BLAST search of the human genome to see if human beings carry a similar gene; BLAST will identify sequences in the human genome that resemble the mouse gene based on similarity of sequence.
BLAST is one of the most widely used bioinformatics programs, probably because it addresses a fundamental problem, and its algorithm emphasizes speed over sensitivity. This emphasis on speed is vital to making the algorithm practical on the huge genome databases currently available, although subsequent algorithms can be even faster.
Examples of other questions that researchers use BLAST to answer are
BLAST is also often as part of other algorithms that require approximate sequence matching.
The BLAST algorithm and a computer program that implements it were developed by Stephen Altschul, Warren Gish , David Lipman at the U.S. National Center for Biotechnology Information (NCBI), Webb Miller at The Pennsylvania State University, and Gene Myers at the University of Arizona . It is available on the web at .
The original paper "Altschul, SF, W Gish, W Miller, EW Myers, and DJ Lipman. Basic local alignment search tool. J Mol Biol 215(3):403-10, 1990." was the most highly cited paper published in the 1990s.
To run, BLAST requires two sequences as input: a query sequence (also called the target sequence) and a sequence database. BLAST will find subsequences in the query that is similar to a subsequence in the database. In typical usage, the query sequence is much smaller than the database, e.g., the query may be 1 thousand nucleotides while the database is several billion nucleotides.
To define what it means for two subsequences to be "similar", BLAST uses the Smith-Waterman algorithm. Unfortunately, the Smith-Waterman algorithm is too slow to use on huge genome databases currently available. Therefore, the BLAST algorithm works by searching for small regions that are exactly the same in the two sequences and then attempting to extend the alignment to either side until the comparison score reaches a certain threshold. These heuristics used to speed the basic Smith-Waterman algorithm are the key technical innovation of BLAST programs, and the more practical CPU requirements explain why BLAST is vastly more used than the Smith-Waterman algorithm.
An extremely fast alternative to BLAST that compares nucleotide sequences to the genome is BLAT (Blast Like Alignment Tool). A more precise, and much slower, alternative to BLAST is the Smith Waterman.
The BLAST program can either be downloaded and run as a command-line utility "blastall" or accessed for free over the web. The BLAST web server, hosted by the NCBI, allows anyone with a web browser to perform similarity searches against constantly updated databases of proteins and DNA that include most of the newly sequenced organisms.
BLAST is actually a family of programs (all included in the blastall executable). The following are some of the programs, ranked mostly in order of importance: