针,以及一个你看不见的草垛
在这一篇之前的几篇里,你已经攒起了一套强大的工具箱。[[restriction-endonuclease|限制酶]]在确定的序列处切开 DNA,留下你可以重新接合的末端;[[cloning-vector|克隆载体]]把一段外源片段带进细菌里;[[bacterial-transformation|转化]]把这个载体送进去,再由一道筛选告诉你哪些菌落接收了它。把这些拼在一起,你就能把某一选定的 DNA 片段复制成无穷无尽、彼此相同的拷贝——也就是把它克隆出来。但这一切都假定你*已经*拥有你想要的那段、它正躺在试管里。这一篇要回答更难、更靠前的那个问题:当你关心的基因埋在三十亿个碱基对的人类 DNA 里某处时,你究竟一开始是怎么把它弄到手的?
先体会一下这赔率有多残酷,会很有帮助。一个人类基因或许有一千个字母长,却迷失在一个比它大三百万倍的基因组里。你看不见一个基因;你也没法用镊子把它挑出来。而且——这是关键的历史要点——在这些技术被发明出来的那个年代,也就是 1970、1980 年代的大部分时间里,*没有人读过基因组*。没有哪张地图会告诉你这个基因在 7 号染色体的某某位置上。整个基因组当时还没被测序,要等到 [[molbio-human-genome-project|人类基因组计划]]在 2003 年前后完成才行。所以这道难题比大海捞针还要尖锐:它是要在一个谁都没编过目录的草垛里,找出某一根特定的针。
基因组文库:把整个基因组切成片段
先从更字面意义上的那种收藏说起,也就是[[genomic-library|基因组文库]]。取一个生物的整个基因组,把它切开——通常用限制酶,而且往往只是部分切割,好让切口落在零散、彼此重叠的位点上,而不是一下子把每个位点都剁断。你最后会得到数百万个片段,它们合在一起,从头到尾覆盖整个基因组,包括基因之间的部分,以及基因内部那些非编码的片段。接着把每个片段连接进一个载体里,再把整锅混合物转化进细菌。每个细菌接收一个片段;每个细菌长成一个菌落,里面全是携带着那一个片段的相同细胞。这全套菌落——数以百万计——就是文库。基因组这本书的每一页都在里头某处,已被复制、随时可读,哪怕你压根不知道哪个菌落装着哪一页。
你究竟需要多少个克隆?要多到凭纯粹的概率,基因组的每一部分都至少被代表一次——再为保险起见多重复几次,因为切割是部分的、随机的。基因组越大、每个载体能装的片段越小,需要的克隆就越多。这正是分子生物学家后来看重大容量载体的原因:一个能携带更大插入片段的载体,意味着覆盖基因组所需的片段更少,于是文库也更易于打理。这套算术毫不留情,却很简单——覆盖度无非就是基因组大小除以插入片段大小,再乘上一个安全系数。
第二种文库更巧妙,它依托的是你在这条阶梯最开头就遇到过的一个想法。基因组文库忠实却不加分辨——它把每个基因都收进来,不管它有没有被用过,还连带收进了基因之间所有非编码的“荒漠”。很多时候你并不想要这些。很多时候你只想要某个特定细胞*实际正在表达*的那些基因,而且想要它们被剥掉那些让真核基因显得杂乱的内含子。诀窍是:根本不从 DNA 出发,而从信使 RNA 出发。在任何一个给定的细胞里,mRNA 分子的总体,正是一张快照,精确记录着哪些基因被打开了、又各自有多丰富。
cDNA 文库:只收那些被打开的基因
但你没法直接克隆 RNA——载体和细菌打交道的对象是 DNA。于是你用一种叫[[molbio-reverse-transcriptase|反转录酶]]的酶把 RNA 反过来拷贝成 DNA,这种酶借自反转录病毒,它读取一条 RNA 链,再沿着它铺出一条互补的 DNA 链。你得到的 DNA 叫作互补 DNA,即 cDNA,而把一批 cDNA 克隆进载体所成的收藏,就是 [[cdna-library|cDNA 文库]]。请在刚发生的这件事上停一下,因为它悄悄戳破了一个常见的误解。[[molbio-central-dogma|中心法则]]常被误记成一条单行道法则——DNA -> RNA -> 蛋白质,绝不倒流。它从来不是这个意思。中心法则讲的是*序列信息流入蛋白质*;它并不禁止信息从 RNA 再回到 DNA。反转录酶做的恰恰就是这件事,无论在自然界还是在你的试管里,而 cDNA 文库正建立在它之上。
GENOMIC clone (a slice of the chromosome, introns and all):
5'- promoter ... EXON1 -[ intron ]- EXON2 -[ intron ]- EXON3 ... -3'
cell splices out introns, makes mature mRNA
|
v
mature mRNA : 5'-cap- EXON1-EXON2-EXON3 -AAAAA(polyA tail)-3'
reverse transcriptase copies mRNA -> DNA
|
v
cDNA clone (intron-free, just the coding message):
5'- EXON1-EXON2-EXON3 -3'因此这两种文库之间的差别绝非装点门面——它是*各自保存何种信息*上的差别,而你想要哪一种,完全取决于你的问题。基因组克隆保留着基因在染色体里的样子:内含子、启动子、调控序列,应有尽有。如果你想研究一个基因是怎样被打开的,这层上下文就是金子。cDNA 克隆则只保留成熟、剪接好的信使——外显子被缝合在一起,随时可以编码蛋白。如果你的目标是在细菌里造出一种人类蛋白,那 cDNA 不可或缺,因为细菌没法把一个真核基因的内含子剪掉;要是把未经处理的基因组版本交给它们,它们会径直把内含子也翻译进去,译出一堆无意义的东西。
探针:靠碱基配对找出那一个克隆
现在你有了一个文库——一只培养皿,里头满是数百万个菌落,其中某一个装着你的基因。你怎么把它找出来?你利用 DNA 那个最可靠的性质,也是这整条阶梯一再回到的那个性质:一条单链会去寻找并结合它的互补链。A 与 T 隔着空间伸手配对,G 与 C 亦然;一有机会,两条序列匹配的链就会拉合成一个双螺旋、并稳稳待在那里。这种靠互补来识别的本领,是[[nucleic-acid-hybridization|杂交]]的根基,也是整个分子生物学中专一性最为精妙的搜索工具。你根本不需要读出任何序列就能找到你的基因;你只需要一段与它匹配的 DNA。
那段匹配的片段就是[[molecular-probe|探针]]:一小段单链 DNA(或 RNA),其序列与你的目标基因的某一部分互补,并带着一个标记,好让你看出它最终落在哪里。经典做法里,这个标记是一个放射性原子,会让一张照相底片感光成雾;如今则更常是一种荧光染料,或一种能产生颜色的酶。探针的任务简单而美妙——被释放到铺开的菌落之间后,它对自己不匹配的那数百万个克隆视而不见,只锁定那个它能与之互补的克隆,把自己的标记恰好留在那里,就像一张会在暗中发光的贴纸,贴到了唯一正确的那一页上。
- 把文库铺开,让它的菌落长成一个个分开的点,再把一张膜压到培养皿上,原样拓下每个菌落所在的位置。
- 在膜上把细胞破开,并把它们的双链 DNA 拆开(变性)成单链,于是每个克隆的 DNA 此刻都暴露在外、随时可以配对。
- 把膜浸入带标记探针的溶液里。探针只在找到自己互补序列的地方杂交上去——也就是你的基因那里。
- 把所有没结合上的探针洗掉,然后检测那个标记。唯一发亮的那个点,会指回原培养皿上携带你基因的那一个菌落——把它挑出来培养扩增,然后尽管克隆就是了。
搜索有多专一,归结为一个你可以拧的旋钮:洗涤的严格度。杂交所依据的物理,和DNA 解链是同一套——条件温和时链会配对,条件变苛刻时它们就分开。一对完美匹配的探针—靶标,比一对差几个碱基的“险些命中”结合得更牢。所以,通过在更高温、盐更多或更少的条件下洗涤,你可以把只是粘到“相似”序列上的探针剥下来,而让完美匹配的那处留在原位。把严格度调高,就是要求精确匹配;调低,则可以钓出那些序列只是大致相似的相关基因——这是找到一个家族成员、或在另一个物种里找到同一基因的办法。
可这探针一开始又是从哪来的?
这里潜伏着一个合情合理的反驳。要做一段与你的基因互补的探针,你不是早就得知道这个基因的序列了吗——而那恰恰是你打算去发现的东西?这听起来像在绕圈子,而把它理清,正好显出早期分子生物学家不得不有多么足智多谋。你很少需要整条序列;你只需要一小段就能做出探针,而切入的诚实办法有好几条。如果你已经纯化出该基因编码的蛋白,你就能读出它的几个氨基酸,再把遗传密码倒着推,猜出一段必然编码它们的 DNA。如果有同行已经从小鼠里克隆出同一个基因,你就能拿它当探针,在低严格度下把人类版本钓出来。有时探针甚至就来自 cDNA 文库本身——一种丰富的 mRNA 可以被反转录,再用来找出它自己的基因组克隆。
更深一层的要点是:探针加杂交这个想法一经发明,其推广远远超出了在文库里翻找。把你的片段按大小在凝胶上排开,转移到一张膜上,一段带标记的探针就会点亮携带你序列的是哪一条带——这就是针对 DNA 的 [[southern-blot|Southern 印迹]],它的姊妹 Northern 印迹则对 RNA 做同样的事,用来问一个基因是否表达、在哪里表达。把这套逻辑铺到一张排布着成千上万种不同探针的玻璃片上,你就有了一块微阵列,一次读出整个转录组。把一段荧光探针送进一个完好的细胞,它就会精确地标出自己的靶标坐落在染色体的哪个位置。杂交就是一个想法——一条链找到它的互补链——却被磨成了十几种不同的工具。
这一切为何重要——以及后来什么变了
请稍停片刻,体会一下文库加探针实际成就了什么。在大约二十年里,这*就是*分离一个基因的办法。想要某种遗传病背后的基因?建一个文库、设计一段探针、筛查那些菌落,把那个克隆挑出来——然后只测序这一个小小的克隆,而不是整个基因组。在还没有任何基因组可供查阅的年代,追猎像囊性纤维化、亨廷顿病这类疾病的基因,靠的正是这套机器,往往还要配上煞费苦心的遗传作图,来缩小该去探测哪些片段。要说经典分子生物学有多大一部分,实践中其实就是“做出一个好文库、一段好探针”的手艺,怎么强调都不为过。
然后地基移动了,而这正是诚实地收尾的地方。两项进展悄悄让“手工筛查文库”这套常规,在大多数日常用途上退了役。第一,廉价、快速的测序——人类基因组计划,以及随后的新一代测序——意味着参考基因组如今干脆是*已知*的。你往往不再需要从一个实体文库里把基因钓出来;你直接在数据库里查它的序列。第二,聚合酶链反应,也就是下一篇的主题,只要给它两段夹住目标的短引物,就能在一个下午里直接从样本中复制出某一特定的 DNA 片段——根本不需要任何文库。
可也别把文库一笔勾销、当成博物馆里的陈列品。cDNA 文库活了下来,还被放大到面目全非的程度:把一个样本里的每一条 cDNA 都测序,本质上就是 RNA-seq 在做的事,它读出一个细胞表达了哪些基因、表达得有多强——这正是最初那些 cDNA 文库被造出来要问的同一个问题。而杂交,作为探针的核心,比以往任何时候都更鲜活:每一次荧光原位染色、每一块微阵列、每一项靠序列来检出病毒的诊断检测,都是一条链在寻找它的互补链。文库与探针的时代,给分子生物学上了一课,它再也没忘记——你可以搜索一个你读不出来的基因组,只需在黑暗中,让互补的链彼此找到对方。