PDB 数据库概述:起源、数据与访问
做结构生物学或生物信息学的人,每天打交道最多的数据库之一,就是 PDB。我第一次上手 PDB 还是研究生时期,那时候还没这么多好用的工具,想查个蛋白质结构得先翻半天文档。现在回想起来,其实 PDB 的核心概念和操作并不复杂。
今天我带你捋一遍它的底子,包括是怎么来的、里面存了什么、怎么下载。弄清楚了这些,后续章节里我们做结构生成结果图谱验证才能踏实。
PDB 的起源:一段从晶体开始的故事
PDB 的全称是 Protein Data Bank,也就是蛋白质数据库。它最早的诞生可以追溯到 1971 年。那时候国际上几个著名的结构实验室发现,大家各自解出来的蛋白质、核酸三维结构,全都散落在抽屉和笔记里,没法共享。
所以呢,布鲁克海文国家实验室牵头,搞了一个数据中心,专门收这些结构数据。1998 年之后,管理权交到了 wwPDB(全球蛋白质数据库联盟)手上,一直运作到现在。
为什么说这个历史重要?我自己的体会是:PDB 是所有结构生物学研究的“锚点”。不管你是用 X 射线晶体学、核磁共振,还是冷冻电镜解出的结构,只要达到一定质量标准,最终都要存到 PDB 里。它是全球唯一的权威库。
数据内容:PDB 里都存了些什么?
你以为 PDB 里只存坐标?其实远不止这些。每一条 PDB 条目(我们叫它一个 PDB ID),都是一个结构研究的“完整档案”。
我来拆一下,一条典型的 PDB 文件(以 .pdb 和 .cif 两种主格式存在)里包含:
- 原子坐标:这是最核心的部分,包含每个原子的 x、y、z 坐标、占有率、温度因子。
- 一级序列:氨基酸或核酸的序列信息。
- 结构元数据:分辨率、R 因子、空间群、晶胞参数这些实验参数。
- 配体与修饰:小分子、辅因子、修饰基团的描述。
- 文献引用:这篇结构对应的原始论文信息。
- 生物组装注释:告诉你这个结构在细胞里是以什么多聚体形式存在的。
下表给出一个典型 PDB 文件的结构概要:
| 记录类型 | 关键词示例 | 内容说明 |
|---|---|---|
| 标题 | HEADER | 结构分类、发表日期与 ID |
| 序列 | SEQRES | 聚合物的一级序列 |
| 晶胞与对称 | CRYST1 | a b c 长度、αβγ 角度、空间群 |
| 原子坐标 | ATOM / HETATM | 原子名称、残基名、坐标、占有率、温度因子 |
| 连接键 | SSBOND / LINK | 二硫键或特殊连接 |
| 配体定义 | HET / HETNAM | 非标准残基与小分子说明 |
| 生物组装 | BIOMT | 生物体内的聚合状态变换矩阵 |
访问方式:怎么查、怎么搜
你现在去看 PDB,主页面是 rc sb.org(你懂的,全名不展开)。但更重要的,是你要知道不同场景下怎么查数据。
方式一:浏览器直接访问
打开 PDB 主页,输入 ID 或关键词。例如搜“4HHB”就是血红蛋白的一个经典结构。页面里面会有可视化工具、结构质量打分、序列信息等等。
方式二:RESTful API
我干活时最常用的是这个。通过写简单的 HTTP GET 请求,就可以直接拉取数据。适合批量处理和做自动化流程。
curl "https://www.rcsb.org/graphql" \
-H "Content-Type: application/json" \
-d '{
"query": "{
entry(entry_id: \"4HHB\") {
struct_keywords {
pdbx_keywords
}
rcsb_entry_info {
resolution_combined
structure_determination_methodology
}
}
}"
}'
你看,返回的 JSON 直接就有分辨率和实验方法。
方式三:程序化批量下载
如果你要做上百上千个结构的图谱验证,千万别一个页面一个页面地点。用下面这个 Python 脚本,配合 wwPDB 的 FTP 服务器,轻松搞定:
import urllib.request
pdb_id = "4HHB"
url = f"https://files.rcsb.org/download/{pdb_id}.pdb"
urllib.request.urlretrieve(url, f"{pdb_id}.pdb")
print(f"下载完成:{pdb_id}.pdb")
文件格式:从 pdb 到 mmCIF 的演变
早年大家都用 .pdb 格式,每行 80 个字符,记录类型靠前几个大写字母区分。但这个格式限制越来越多,特别是复杂的多链结构和配体定义。
所以呢,现在的标准格式正在向 mmCIF(也叫 PDBx/mmCIF)迁移。mmCIF 没有列宽限制,数据组织更清晰,还支持更丰富的元数据。
两者对比一下:
| 特性 | .pdb 格式 | .mmCIF 格式 |
|---|---|---|
| 列宽限制 | 固定 80 字符 | 无限制 |
| 处理多链 | 需要链标识符 | 原生支持 |
| 配体定义 | HET 记录 | 类别-属性结构 |
| 元数据支持 | 有限 | 丰富 |
我个人习惯,现在做结构验证一律用 .cif 格式。解析库推荐 gemmi 或者 Bio.PDB。你如果还在用 .pdb 糊,可能会遇到很多奇怪的坑。
本章知识体系速览图
下面是 PDB 的核心逻辑框架。从用户访问到数据获取,再到文件格式,最后落地到结构验证,每一步都环环相扣。
正式研究之前的小提醒
- 如果你接手的 PDB 文件里包含 REMARK 3 字段,记得重点看,那里会注明结构精修的质量。
- 很多网上工具和教程还在用 .pdb 格式做演示,但你要知道,业内正式推荐的是 mmCIF。从 wwPDB 下载时建议选 .cif。
- 元数据里如果有 UNK 残基,暗示那个位置电子密度不好,我没猜错的话,这常常是图谱验证中最头疼的问题点。
好了,上面的内容是我对 PDB 数据库的一个整体拆解。你如果把起源、数据组成、访问方式和格式差异都理清了,后面做结构生成结果的图谱验证,就能清楚每一条数据从哪来、怎么用、哪里可能有坑。