第1章:课程概述与学习目标

宏基因组学,说白了就是从环境样本里直接提取所有微生物的DNA,一股脑儿测序,然后通过分析来回答“这里到底住了哪些微生物”以及“它们在干什么”。我第一次拿到宏基因组数据时,说实话有点懵——几百万条读长,拆开看每条都像天书。后来才明白,核心逻辑就两件事:把读长拼成基因组,再从基因组里找功能基因。

这门课呢,是我这些年攒下来的一套工具链配置心得。你想想看,宏基因组分析最烦人的不是算法原理,而是环境配置。每个工具都有几十个依赖,版本一不对就报错。我见过不少同学因为装软件花的时间比跑分析还多,最后直接弃坑。所以这门课的目标非常明确:帮你把整套工具链从头到尾配通,踩过的坑我们提前填平。

宏基因组学简介

宏基因组学(Metagenomics)是研究环境中全部微生物遗传物质的总和。传统培养方法只能盯住那1%能养的菌,剩下99%都成了“微生物暗物质”。宏基因组跳过培养这步,直接对DNA测序。2004年,Venter团队在Sargasso海搞了第一个大规模宏基因组项目,从此打开了一扇门。

为什么要做这个?举个例子。我在一个土壤项目中遇到一个怪现象——作物减产严重,但平板分离死活找不到致病菌。后来跑了宏基因组,才发现是一种不可培养的真菌在捣鬼。这玩意儿传统方法根本发现不了。

宏基因组 vs 宏转录组 vs 16S扩增子

技术 测什么 分辨率 能回答的问题
16S扩增子 16S rRNA基因片段 属级(通常) “谁在?”(群落组成)
宏基因组 全部基因组DNA 种级甚至菌株级 “谁在?可能做什么?”(基因潜能)
宏转录组 全部mRNA 种级 “正在做什么?”(基因表达活性)

我的建议:如果预算有限且只关心群落结构,16S就行。但如果你想发现新基因、组装完整的MAG(宏基因组组装基因组),或者想做功能注释,直接上宏基因组。

一个容易被忽视的点:宏基因组测序深度直接影响后续组装效果。我记得一个肠道项目只测了2G数据,结果组装出来的都是碎段,啥MAG都没拿到。个人经验,土壤样本至少20G,肠道样本10G起步。

常用工具链总览

宏基因组分析的工具有上百个,但真正天天用的也就十来个。我个人习惯把数据处理分成几个步骤,每个步骤选一个主力工具,别贪多。贪多的后果就是——版本冲突,环境乱成一锅粥。

下面这张图是我在项目中最常用的工具链流程,也是这门课的核心脉络:

宏基因组工具链核心流程 宏基因组分析核心工具链流程 ① 质控与预处理 Fastp / FastQC ② 拼接组装 MEGAHIT / metaSPAdes ③ 分箱 & MAG MetaBAT2 / MaxBin2 ④ 功能与物种注释 Kraken2 / Prokka / EggNOG 丰度定量与差异分析 Salmon / DESeq2 物种与功能关联分析 HUMAnN3 / PICRUSt2 🎯 终端产出 MAG基因组 / 物种组成表 / 功能基因丰度表 / 统计报告 🔧 配置核心原则 ✅ 使用 conda/mamba 隔离环境,每个工具建独立环境 ✅ 依赖 nf-core/mag 或 ATLAS 等流程管理工具简化串联(第5-6章) ✅ 版本锁定:记下工具版本号,便于重复和复现 ⚠️ 我曾经因为 conda 源没配好,装工具装了一整天都没装上。阿里源和清华源的配置方法在第2章会讲。

工具链的关键步骤可以拆成下面几个梯队:

  1. 质控与预处理(Fastp + FastQC)——原始数据先过一遍,去掉低质量碱基和接头。跳过这步,后面组装出一堆错误contigs,你哭都来不及。
  2. 拼接组装(MEGAHIT / metaSPAdes)——把短读长拼成长片段。一个是速度之王,一个是质量之选,取舍看你的数据量和目的。
  3. 分箱与MAG提取(MetaBAT2 / MaxBin2)——从混拼结果中分出单个基因组的“轮廓”,也就是MAG。这步是宏基因组分析的高光时刻——你很可能发现一个新物种。
  4. 功能与物种注释(Kraken2 / Prokka / EggNOG)——打上标签,知道每个MAG是谁、能干啥。
  5. 定量与统计分析(Salmon / DESeq2 / HUMAnN3)——问出“哪个菌在哪种条件下丰度更高”这种生物学问题。
一个常见陷阱:很多人直接上手就装最新版工具,但MEGAHIT v1.2.9和metaSPAdes v3.15在某些数据集上会莫名崩溃。我曾经在HPC上调试了两天才发现是GCC版本问题。这门课会统一锁定经过验证的版本号,你在自己的机器上照着配就行。

课程安排与前置知识要求

整个课程一共30章,我把它划分成五个模块:

模块 章节 核心内容
基础环境 第1-4章 conda/mamba管理、GCC/CMake配置、基础编译器链
数据预处理 第5-8章 Fastp配置、拼接器编译、集群任务调度(SLURM/SGE)
基因组解析 第9-14章 分箱工具配置、CheckM质量评估、DRep去冗余
功能注释 第15-22章 Kraken2数据库构建、Prokka运行、EggNOG-mapper
集成与流程 第23-30章 Snakemake/NXF流程封装、NF-core/mag部署、容器化(Singularity/Docker)

前置知识要求:

  • 会敲Linux基础命令(cd, ls, grep, sed)——如果你只会Windows,建议先花一周补补Linux,不然第2章你就会卡住。
  • 懂Python/R的基本概念,至少能看懂脚本。
  • 一些基本的生信概念:测序读长、覆盖度、contig、参考基因组——这些在实战中我会简单回顾,但不会当核心内容讲。
给零基础同学的特别建议:先快速看一遍第1章到第3章,把conda配通就行。别一次性装所有工具,我没见过有人一次性成功的。先配好一个环境,跑通一条小数据,再慢慢加工具。步子大了,容易扯着蛋——嗯,这是我一贯的口头禅。

好了,讲完了概览。第2章我们直接动手,从conda配置开始搭地基。