Visão geral
BLAST (Basic Local Alignment Search Tool) é o algoritmo mais amplamente usado para comparar uma sequência de consulta com um banco de dados de sequências conhecidas. Ele identifica rapidamente alinhamentos locais estatisticamente significativos, fornecendo anotação funcional para novos genes, detectando homologia entre espécies distantes e revelando relações evolutivas. O BLAST sacrifica a otimização garantida da programação dinâmica completa por uma heurística que é rápida o suficiente para pesquisar bancos de dados contendo bilhões de resíduos. A significância estatística de cada acerto é relatada como um valor E – o número esperado de alinhamentos aleatórios com uma determinada pontuação em um banco de dados desse tamanho.
Conceitos-chave
O BLAST funciona primeiro dividindo a consulta em palavras curtas (normalmente 3 para proteínas, 11 para nucleotídeos), verificando o banco de dados em busca de correspondências exatas para essas palavras e, em seguida, estendendo correspondências promissoras em ambas as direções para construir alinhamentos mais longos. As variantes abordam casos de uso específicos: BLASTP compara consultas de proteínas com bancos de dados de proteínas, BLASTN compara consultas de nucleotídeos com bancos de dados de nucleotídeos, BLASTX traduz uma consulta de nucleotídeos em todos os seis quadros de leitura para comparação em nível de proteína e PSI-BLAST constrói iterativamente uma matriz de pontuação específica de posição para detectar homólogos distantes. MegabLAST é otimizado para sequências altamente semelhantes, enquanto MegabLAST descontíguo lida com comparações entre espécies.
Aplicativos
O BLAST é a primeira etapa na anotação de incógnitas de projetos de sequenciamento de DNA. Ele atribui função putativa a novas proteínas, detectando homologia com [estruturas proteicas] caracterizadas(/guides/protein-structure.html). Em genética bacteriana, o BLAST identifica fatores de virulência e genes de resistência a antibióticos. Tecnologia de DNA recombinante usa o BLAST para verificar a integridade da construção alinhando leituras de sequenciamento com sequências de vetores esperadas.
Protocolo Prático
As pesquisas padrão do BLAST são executadas por meio da interface da web ou da linha de comando do NCBI. Para uma consulta de proteína no banco de dados nr usando a linha de comando BLAST: blastp -query query.fasta -db nr -out results.txt -evalue 1e-5 -num_threads 8 -outfmt "6 qseqid sseqid pident length mismatch gapopen qstart qend sstart send evalue bitscore stitle". O -outfmt 6 produz saída tabular ideal para análise downstream. O valor E (valor esperado) representa o número de acertos esperados ao acaso em uma determinada pontuação, dado o tamanho do banco de dados - valores <1 × 10⁻⁵ para proteínas ou <1 × 10⁻¹⁰ para nucleotídeos indicam homologia significativa. A pontuação de bits é uma pontuação normalizada independente do tamanho do banco de dados, permitindo a comparação entre pesquisas; pontuações acima de 50 geralmente são significativas para proteínas. Para uma pesquisa traduzida (consulta de nucleotídeos no banco de dados de proteínas), use BLASTX: blastx -query ests.fasta -db swissprot -out blastx_results.txt -evalue 1e-5. Para sequências altamente semelhantes, use MegabLAST: blastn -task megablast -query query.fna -db nt -out megablast_results.txt -evalue 1e-50. Otimizar parâmetros: reduzir o tamanho da palavra para 2 (para proteínas) ou 7 (para nucleotídeos) para aumentar a sensibilidade para homólogos distantes; aumentar o limite para estender os acessos iniciais. Para pesquisa de perfil iterativa, execute PSI-BLAST: psiblast -query seed.fasta -db nr -out psi_results.txt -num_iterations 3 -evalue 1e-3. O PSI-BLAST constrói uma matriz de pontuação específica de posição (PSSM) a partir dos acertos do primeiro turno e a utiliza nas rodadas subsequentes, detectando homólogos remotos que o BLAST padrão erra. Para pesquisas em lote em grande escala, use diamond que é 100–1000× mais rápido que o BLASTP: diamond blastp -d nr.dmnd -q query.fasta -o diamante_results.txt --outfmt 6 --evalue 1e-5 --threads 16.