使用 NCBI 在线 BLAST 进行序列比对

  • 如何进入 NCBI BLAST 网站、界面长什么样
  • 如何准备和粘贴示例序列
  • 关键参数(数据库、算法、E-value 等)具体含义
  • 如何阅读 BLAST 结果页面中的图形和表格
  • 根据不同研究目的如何调整参数

一、BLAST 与 NCBI 在线平台简介

1.1 什么是 BLAST?

BLAST(Basic Local Alignment Search Tool) 是一类用于“在数据库中查找与给定序列相似序列”的局部比对算法家族,常见变体包括:

  • BLASTN:核酸 vs 核酸
  • BLASTP:蛋白 vs 蛋白
  • BLASTX:核酸(翻译成蛋白)vs 蛋白
  • TBLASTN:蛋白 vs 翻译后的核酸库

BLAST 的典型应用包括:

  • 判断一个未知序列可能来自哪个物种、对应哪个基因或蛋白
  • 查找同源基因(ortholog/paralog)
  • 验证测序结果是否正确、是否被污染

1.2 NCBI 在线 BLAST 入口与界面

NCBI 提供了免费的在线 BLAST 服务,无需本地安装软件,只要有浏览器即可使用。

步骤 1:打开 NCBI 网站
在浏览器地址栏输入:
https://blast.ncbi.nlm.nih.gov/
或在搜索引擎中搜索 “NCBI BLAST”,点击官方链接(通常标题为 “BLAST: Basic Local Alignment Search Tool”)。
步骤 2:认识 BLAST 首页
典型的 BLAST 首页包含几个大模块:
  • Nucleotide BLAST(核酸 BLAST)
  • Protein BLAST(蛋白 BLAST)
  • BLAST Assembled Genomes 等高级入口
本节主要使用 Nucleotide BLASTProtein BLAST 两个入口。
NCBI BLAST 首页:Nucleotide BLAST 与 Protein BLAST 入口

二、准备示例序列

为演示流程,先给出两条简短的示例序列,可直接复制使用。

2.1 核酸序列示例(nt BLAST)

下面是一段来自人类线粒体基因组(COI 片段)的核酸序列,已用 FASTA 格式 标注好:

>Example_COI_human_mtDNA
ATGATTATGGAAGCTTCTAGGAGCCATCAAGTATTTAGCTGACTATGAACCCCCT
ACAAATCATTAATCGGAGGCTTTGGCAACTGACTAGTTCCCCTAATAATCGGAGG
CTTTGGAAACTGACTAGTCCCTCTAATAATCGGAGGCTTTGGCAACTGACTAGTT

说明:

  • 第一行以 > 开头的是序列 ID,可以任意命名
  • 后面几行是碱基序列,只包含 A/C/G/T(以及少量其他 IUPAC 碱基符号)

2.2 蛋白序列示例(protein BLAST)

下面是一条简化的蛋白氨基酸序列,同样是 FASTA 格式:

>Example_Protein
MALWMRLLPLLALLALWGPGPGAGGHEGSLQPLALEGSLQKRGIVEQCCTSICSL
YQLENYCN

说明:

  • 第一行以 > 开头的是蛋白 ID
  • 后面是氨基酸单字母码(A、R、N、D、...)

三、一步步完成核酸 BLAST(BLASTN)

3.1 打开 BLASTN 页面

  1. 访问 https://blast.ncbi.nlm.nih.gov/
  2. 在首页点击 Nucleotide BLAST 按钮,进入核酸 BLAST 页面。

进入页面后,可看到以下主要区域:

  • Enter Query Sequence:粘贴或上传核酸序列
  • Choose Search Set:选择比对的数据库和物种范围
  • Program Selection:选择 BLAST 算法模式(Highly similar sequences / Somewhat similar sequences)
  • Algorithm parameters:展开的高级参数区(Word size、Match/Mismatch scores 等)

3.2 粘贴序列与基本设置

Enter Query Sequence 区域进行如下操作:

  1. 将上文给出的核酸 FASTA 序列整体复制,粘贴到 “Enter Query Sequence” 的文本框中。
  2. 保持 Query subrange 为空(代表比对整条序列)。
  3. 如果有多个序列,可以继续往下粘贴,每条以 > 开头。

Choose Search Set 区域:

  • Database 建议初学者选择:nr/nt(Non-redundant nucleotide sequences)
  • Organism
    • 如果已大致了解来源物种,可输入例如 “Homo sapiens (taxid:9606)”
    • 如果完全未知,建议先留空,搜索所有物种

3.3 重要参数说明

Program SelectionAlgorithm parameters 部分,有一些关键参数值得理解:

Program Selection
一般会有类似选项:
  • Highly similar sequences (megablast):适合比对高度相似的序列,例如不同样本同一物种
  • More dissimilar sequences (discontiguous megablast):适合更远缘的同源性搜索
初学者若只是验证测序结果,多选 megablast 即可。
E-value(Expect value)
  • E-value 表示“在当前数据库大小下,随机出现同等或更好比对得分的期望次数”
  • 数值越小,说明该比对越不可能是随机产生的,可信度越高
  • 常见默认值为 10,对于高质量比对,可关注 E-value < 1e-5 或更小的 hits
Word size(词长)
  • BLAST 首先寻找长度为 word size 的完全匹配“种子”
  • word size 越小,敏感性越高,但速度更慢
  • 对较短或较不保守的序列,可以适当减小 word size 提高灵敏度
Match/Mismatch 与 Gap penalty
  • Match/Mismatch:匹配奖励与错配惩罚(如 +2/-3)
  • Gap costs:插入/缺失的开启动作和延长动作的惩罚
  • 默认设置通常已对大多数情况较为合理,一般无需修改

3.4 提交任务与运行过程

  1. 确认序列与参数设置无误后,点击页面下方的 BLAST 按钮。
  2. 页面会跳转到一个“搜索进行中”的等待界面,显示队列位置和预计剩余时间。
  3. 完成后会自动跳转到结果页面,包含多个标签页(Overview、Descriptions、Alignments、Graphics 等)。

四、一步步完成蛋白 BLAST(BLASTP)

4.1 打开 BLASTP 页面

  1. 同样访问 https://blast.ncbi.nlm.nih.gov/
  2. 在 BLAST 首页点击 Protein BLAST

蛋白 BLAST 的页面结构与核酸 BLAST 非常类似,只是数据库和参数的默认设置稍有不同。

4.2 粘贴序列与参数设置

Enter Query Sequence 区域:

  1. 将上文给出的蛋白 FASTA 序列复制粘贴到文本框。
  2. 确认下方的 Query subrange 为空,表示使用全长蛋白。

Choose Search Set 中:

  • Database:建议选择 nr(Non-redundant protein sequences)
  • Organism:可留空,或填写预期物种(如 Homo sapiens)。

蛋白 BLAST 常见的额外参数:

  • Matrix(替换矩阵):如 BLOSUM62、PAM30 等,决定不同氨基酸替换的得分
  • Comp. based stats:成分校正设置,一般保持默认

设置好后同样点击 BLAST 等待结果。

五、结果页面结构与解读

无论是核酸 BLAST 还是蛋白 BLAST,结果页面结构非常类似,主要包含以下几个关键部分。

5.1 图形概览(Graphic Summary)

通常位于结果页面靠上的 “Graphic Summary” 区域,用彩色条带展示:

  • 横轴:查询序列(Query),从 5' 到 3'(或 N 端到 C 端)
  • 每一条彩色横线:一个数据库匹配(Hit)的局部比对位置
  • 颜色深浅:代表得分高低(Score),颜色越深表示匹配质量越高
BLAST 结果页:Graphic Summary(图形概览)标签页
Graphic Summary:以彩色条带概览各条 Hit 在 Query 上的比对位置与得分分布。

解读要点:

  • 如果在整条 Query 上都能看到一条长而连续的深色条,说明有高度相似的同源序列存在
  • 如果只在局部有短片段比对,可能对应保守结构域或局部保守区域

5.2 匹配列表(Descriptions)

在 “Descriptions” 或 “Sequences producing significant alignments” 表格中,常见列包括:

  • Description:匹配序列的注释信息(基因名、物种、功能描述等)
  • Max score / Total score:比对得分,数值越大表示比对越好
  • Query cover:查询序列中被覆盖的比例(%)
  • E value:显著性指标,数值越小越可信
  • Per. Ident:身份性(Identity)比例,即完全匹配的碱基/氨基酸比例
BLAST 结果页:Descriptions(匹配列表)标签页
Descriptions:按显著性排序展示 hits,并提供 Query cover、E value、Identity 等关键指标。

一般经验:

  • E-value < 1e-5Per. Ident > 80%,通常可以认为是比较可靠的同源关系(具体阈值依研究而定)
  • Query cover 较低但 Identity 很高时,说明只是局部高度保守

5.3 比对详情(Alignments)

点击某一条 Hit,可以看到具体的序列比对:

  • Query:查询序列
  • Subject:数据库中的匹配序列
  • 中间一行的符号:
    • |:完全相同
    • +:相近/保守替换(蛋白)
    • 空格或其他:错配或 gap
  • Identities:完全匹配的碱基/氨基酸数量及比例
  • Gaps:插入/缺失的数量

通过该区域可以直观判断:

  • 是否存在大片段连续匹配
  • 是否有大量 gap 或集中错配区域
BLAST 结果页:Alignments(比对详情)标签页
Alignments:展示 Query 与 Subject 的逐位比对,可用于定位错配、缺失/插入与局部保守区域。

结果页的 “Taxonomy” 标签用于按物种谱系汇总 hits,便于快速判断匹配序列的物种分布与潜在污染来源。

BLAST 结果页:Taxonomy(物种分类)标签页
Taxonomy:按谱系层级统计 hits,可用于查看命中结果在不同类群中的分布情况。

5.4 如何下载与分享结果

在结果页面通常可以看到:

  • Download 按钮:支持下载为 TSV、XML、FASTA 等多种格式,以便本地保存或进一步分析
  • Send to:可将结果发送到文件、本地计算机、或保存到 NCBI 账号
  • Request ID(RID):一个唯一的任务 ID,可以在一定时间内用来重新访问结果

六、常见问题与实战小技巧

6.1 常见报错与处理

  • 提交后很久没有结果
    • 可能是数据库选择过大(如 nr)且序列较长,耐心等待
    • 可尝试限制 Organism 或选择更小的数据库加快速度
  • 提示序列格式错误
    • 检查是否包含非法字符(如中文、空格、特殊符号)
    • 确保 FASTA ID 行以 > 开头,后面不要再有 > 或 HTML 符号
  • 结果为空或只有很差的匹配
    • 确认序列方向、是否含有大量 N(不确定碱基)
    • 适当提高 E-value 阈值或减小 word size

6.2 如何根据研究目的调整参数

不同研究问题对 BLAST 的参数需求不同,可参考下表思路:

验证测序结果/物种鉴定
  • Program:Highly similar sequences (megablast)
  • E-value:默认或更严格,如 1e-10
  • Database:nr/nt 或针对目标物种数据库
寻找远缘同源基因/蛋白
  • Program:More dissimilar sequences 或使用 BLASTX/PSI-BLAST
  • 适当提高 E-value 阈值以捕获更多远缘 hits
  • 适当减小 word size 提高敏感性
功能预测与结构域分析
  • 推荐以蛋白序列为 Query,使用 BLASTP
  • 多关注 Descriptions 中的功能注释和保守结构域
  • 可结合 CDD(Conserved Domain Database)进行结构域扫描

完成本节练习后,可:

  • 熟练打开 NCBI 在线 BLAST 平台,并选择合适的 BLAST 类型
  • 用 FASTA 格式准备并提交核酸/蛋白序列
  • 理解并调整常用参数(数据库、Organism、E-value、Program 等)
  • 读懂 BLAST 结果中的图形概览、匹配列表和比对详情

建议在实际工作中多尝试不同的序列与参数组合,逐渐形成适合研究方向的 BLAST 使用习惯。

© 南京中医药大学 人工智能与信息技术学院 袁少勋