下载基因组数据
工具预备
使用工具: sra-tools
或 aspera
两者皆可。
sra-tools官方仓库: https://github.com/ncbi/sra-tools
可以直接访问 README.md
中的下载页面下载预构建的文件、适用于Debian/Ubuntu的安装脚本或者docker镜像。
我是直接下载了相应脚本.
aspera 官方下载页: https://www.ibm.com/products/aspera/downloads
❯ wget https://d3gcli72yxqn2z.cloudfront.net/downloads/connect/latest/bin/ibm-aspera-connect_4.2.16.884-HEAD_linux_x86_64.tar.gz
❯ tar -zxvf ibm-aspera-connect_4.2.16.884-HEAD_linux_x86_64.tar.gz
❯ ./ibm-aspera-connect_4.2.16.884-HEAD_linux_x86_64.sh
# 换成你的shell配置文件
❯ echo 'export PATH=~/.aspera/connect/bin/:$PATH' >> ~/.zshrc
❯ source ~/.zshrc
Aspera 的下载链接为截止2025-09-02
的最新版本,请自行前往官网确认是否有更新的版本发布。
Aspera 也可以通过conda安装。
Aspera 4.2 版本后需要添加 SSH 密钥来校验,这本质上和 SSH 无密钥登录是一个概念。
比较推荐的做法是为 Aspera 专门生成一对公私钥。
使用 Aspera 的时候请导入你的私钥 ~/.ssh/aspera-key
,有时候数据库服务器需要你提供你的公钥给他们,公钥为~/.ssh/aspera-key.pub
。
下载数据
通过 sra-tools
查询数据库:GEO 编号 -> SRA 编号(获取特定实验的数据清单)
GEO 数据库: https://www.ncbi.nlm.nih.gov/geo/
SRA 数据库: https://www.ncbi.nlm.nih.gov/sra/
通过 GEO 编号查询 GEO 数据库内的相应数据文件,得到其在 SRA 数据库内的 SRA 编号(通常在 Relation 内),再于 SRA 数据库内通过 SRA 编号检索相应的数据文件。
Short Read Archive (SRA)
NCBI提供的数据存储服务,存储海量的公开的高通量测序数据。
在检索结果的页面上,点击send to
,选择File
,Format选择Access List
,获得一个SraAccList.txt
文本,里面记录了SRR编号。
SRR编号用于prefetch
命令来下载相应的数据文件。
实现批量下载可以使用脚本语言。
# 定义一个存放数据的路径
output = /tmp/data/xxx/rawdata
# 创建一个批量下载的脚本
cat SraAccList.txt | while read id
do
echo "prefetch ${id} -O ${output}"
done > download.sh
# 执行脚本,考虑到下载需要时间,可以后台运行 (nohup 在终端关闭后不会中断下载任务)
nohup sh download.sh > download.log &
通过 aspera
ENA 数据库官网: https://www.ebi.ac.uk/ena/browser/home
利用PRJN开头的项目在ENA数据库内检索对应的项目数据文件,在Show Column Selection
中选择需要下载的数据格式的链接(例如FASTQ等等),但是一定要勾选相应的MD校验值!!!
选择TSV后下载文件,获得相应数据文件的信息与下载链接。
以下是一个命令的参考。
❯ ascp -k 1 -QT -l 300m -P33001 -i /path/to/your/ssh_private_key your_download_link /path/to/the/file/download
有关于批量下载的待补充。
MD5校验和
哈希函数,启动!
通过 MD5 检验文件是否损坏是必要的,避免做到后面结果一坨发现是数据的问题。
md5sum
命令带有-c
选项,允许传入一个文本文件来自动校验,文本文件的格式要求为:
注意两列之间以制表符\t
相隔!