查看原文
其他

【直播】我的基因组(四):计算资源的准备

2016-10-26 jimmy 生信技能树

大家久等了,Jimmy的测序数据还没有拿到手!但是,工欲善其事必先利其器!所以jimmy在等待自己基因组的这段时间里,准备好了自己计算资源!鉴于会有不少同志们会跟着直播来自己动手分析一个公共的全基因组重测序数据(参考数据下载地址详见直播一),我在这里和大家分享一下计算机资源及软件的基本要求。


全基因组重测序数据的分析作为生物信息学的一个重点,动辄是上百G的数据量,普通个人电脑已经很难能hold住分析流程了。所以,我们更倾向于建议大家使用安装了linux系统的高性能计算机(HPC)进行处理分析,大部分生物信息学数据分析软件都比较适合于在linux系统平台下运行~~如果只是单纯的一次性分析一个人的数据,其实配置还算ok的苹果电脑也是可以的,因为MAC系统是基于LINUX系统的定制化。

本次直播主要从以下几个问题入手,如果有问题和建议可以在微信号中留言哦!

FAQ

1.全基因组重测序数据分析需要的最低配置。

2.云,服务器,集群,HPC的区别。

3.了解相应软件在linux系统中的安装及使用。


首先,我给大家简单算一下本次直播会涉及到的硬盘容量要求,合同中写的是30X的测序深度,而人类基因组约为30亿个碱基,也就是我拿到了900亿个碱基碱基以ATCG的字符表示,每一个碱基同样对应着一个质量值,同样也是字母表示(可自行搜索phred质量值),这就是说我会拿到1800亿的字母。因为我的测序策略是PE150,也就是我会拿到900亿/150=6亿条reads,每一条reads都会有一个名字(大家自行搜索fastq格式),对illumina的测序来说,名字一般是45个字母表示(比如@D00691:60:HT5KWBCXX:1:1105:7158:2243 1:N:0:0) ,也就是总共拿到手有2070亿个字母(不知道你有没有晕,反正小编是一脸懵~)。总共2070亿个字母,在计算机里面,一个字母用一个ASCII码来表示,占8个二进制位(bit),也就是一个字节(Byte),而一个G的存储空间是1024*1024*1024个字节,所以我们的2070亿个字母应该占计算机的192.7838G的空间。其实fastq的第三列还有一个+,但是我们可以忽略掉了,因为反正是估算。

一般gzip的压缩可以到达2.7倍的压缩率,然而比对后的文件会增加,中间处理过程的文件也需要耗费存储空间,而且下载参考基因组,构建比对索引,下载各种基因组计划的变异文件做注释,都需要占用空间,所以我建议大家至少要留出1T的存储空(敲黑板,重点在这里)来做本次的全基因组重测序数据分析。

计算机性能要求比较高的就是比对,也就是把测序数据比对到参考基因组的这个步骤。比对的速度取决于cpu的配置以及软件调用的线程数量,我记得以前测试过,1000 PE reads/8core*second, 就是我用了8线程来做比对,一秒钟也才比对1000条双端测序reads,所以我建议大家准备的计算机至少要有8线程吧,不然比对耗时太久了。如果你不是服务器的话,你电脑不一定能支撑长时间开机。比对我还没测试过对内存的要求,但是查看的bwa(比对软件)的Manuel,6G内存足矣。但是我推荐大家尽量16G

总结:一个 8线程+16G内存+1T储存空间的电脑即可,强烈建议安装linux系统!!!

上面的总结就回答了很多朋友问的问题,个人电脑能不能hold住本次全基因组重测序数据,我的回答是肯定的!其中还有不少朋友问,需不需要买云服务器来分析自己的全基因组数据,我觉得意义不大,首先你100G的数据如何上传到你的云,就是个问题。如果想具体查看哪些云服务器,可以参考:


那么云服务器跟一般公司自己的实体服务器使用起来有什么区别吗?

我的回答是木有区别,公司的实体服务器,你也是当做云在使用,也是通过putty或者xshell等ssh工具,用公司给你的IP、用户名和密码登陆进去操作而已。还有些朋友问集群又是怎么回事,简单来说,集群就是指将很多服务器集中起来一起进行同一种服务,集群可以利用多个服务器进行并行计算从而获得很高的计算速度(具体大家可自行百度)


进行数据处理,我们需要就要抛弃常见的桌面窗口式的电脑操作了,现在只有黑白的命令行终端(如果你喜欢你也可以换成喜欢的颜色),我们首先看看我本次准备的计算资源吧!记住3个命令:

cat /proc/cpuinfo |grep process |wc -l

free -g

df -h

分别查看 core,memory,storage,请自行保证至少要有8core+16G+1T


有了计算机,就需要安装一些必备的软件啦!

在linux系统下面,我们一般不用可视化的桌面,所以软件的使用体验是完全不一样的,在window等可视化电脑上面,我是用鼠标单击,然后自动根据文件名的后缀来选取合适的软件打开一个文件,比如notepad来打开txt文档,Microsoft的office套件来打开doc,xls等办公文档。软件打开之后还可以看到一系列的菜单栏,每个菜单栏还是可以展开的。

在linux下面就没有方便了,你必须自己亲自安装每一个软件,还得记住你安装在了电脑的什么地方,你必须自己敲命令来调用软件,以及软件的参数(类似于菜单栏),必须自己指定该软件应该取作用于什么文件,必须自己指定文件的全路径,而不是用鼠标去选择那个文件。

软件安装在linux系统里面是非常简单的,常见的生物信息学软件就6种,分别是C源码文件perl/python/R/java 语言软件和基于系统版本的二进制可执行软件。对于我们要使用的软件,一般官网会给出多种形式的软件,优先挑选二进制可执行软件,直接解压就可以使用。我还专门制作过视频来指导初学者软件的安装:。本次直播基因组会用的软件有 fastqc、Trimmomatic、bwa、samtools、picardtools、freebayes、VarScan、SnpEff、bedtools,其中所需的GATK和annovar是需要注册才能下载的,软件具体后期会进行讲解,上面这些软件的安装代码如下!

我比较喜欢把软件安装在自己的home目录下面,你们直接复制下面的代码就可以运行的。

mkdir -p  ~/biosoft/myBin

echo 'export PATH=/home/jianmingzeng/biosoft/myBin/bin:$PATH' >>~/.bashrc

source ~/.bashrc

cd ~/biosoft

mkdir cmake &&  cd cmake

wget http://cmake.org/files/v3.3/cmake-3.3.2.tar.gz

tar xvfz cmake-3.3.2.tar.gz

cd cmake-3.3.2

./configure --prefix=/home/jianmingzeng/biosoft/myBin

make

make install


## Download and install bowtie

cd ~/biosoft

mkdir bowtie &&  cd bowtie

wget https://sourceforge.net/projects/bowtie-bio/files/bowtie2/2.2.9/bowtie2-2.2.9-linux-x86_64.zip

#Length: 27073243 (26M) [application/octet-stream]

#Saving to: "download"   ## I made a mistake here for downloading the bowtie2

mv download  bowtie2-2.2.9-linux-x86_64.zip

unzip bowtie2-2.2.9-linux-x86_64.zip


## Download and install BWA

cd ~/biosoft

mkdir bwa &&  cd bwa

#http://sourceforge.net/projects/bio-bwa/files/

wget https://sourceforge.net/projects/bio-bwa/files/bwa-0.7.15.tar.bz2

tar xvfj bwa-0.7.15.tar.bz2 # x extracts, v is verbose (details of what it is doing), f skips prompting for each individual file, and j tells it to unzip .bz2 files

cd bwa-0.7.15

make

#export PATH=$PATH:/path/to/bwa-0.7.12 # Add bwa to your PATH by editing ~/.bashrc file (or .bash_profile or .profile file)

# /path/to/ is an placeholder. Replace with real path to BWA on your machine

#source ~/.bashrc


## Download and install bedtools

cd ~/biosoft

mkdir bedtools &&  cd bedtools

wget https://github.com/arq5x/bedtools2/releases/download/v2.25.0/bedtools-2.25.0.tar.gz

## Length: 19581105 (19M) [application/octet-stream]

tar -zxvf bedtools-2.25.0.tar.gz

cd bedtools2

make

#~/biosoft/bedtools/bedtools2/bin/


## Download and install samtools

## http://samtools.sourceforge.net/

## http://www.htslib.org/doc/samtools.html

cd ~/biosoft

mkdir samtools &&  cd samtools

wget https://github.com/samtools/samtools/releases/download/1.3.1/samtools-1.3.1.tar.bz2

tar xvfj samtools-1.3.1.tar.bz2

cd samtools-1.3.1

./configure --prefix=/home/jianmingzeng/biosoft/myBin

make

make install

~/biosoft/myBin/bin/samtools --help


## Download and install picardtools

## https://sourceforge.net/projects/picard/

## https://github.com/broadinstitute/picard

cd ~/biosoft

mkdir picardtools &&  cd picardtools

wget http://ncu.dl.sourceforge.net/project/picard/picard-tools/1.119/picard-tools-1.119.zip

unzip picard-tools-1.119.zip


## Download and install freebayes

## https://github.com/ekg/freebayes

## http://clavius.bc.edu/~erik/CSHL-advanced-sequencing/freebayes-tutorial.html

cd ~/biosoft

mkdir freebayes &&  cd freebayes

## wget -O freebayes-master.zip  https://codeload.github.com/ekg/freebayes/zip/master

## unzip freebayes-master.zip

wget http://clavius.bc.edu/~erik/freebayes/freebayes-5d5b8ac0.tar.gz

tar xzvf freebayes-5d5b8ac0.tar.gz

cd freebayes

make

~/biosoft/freebayes/freebayes/bin/freebayes


cd ~/biosoft

## https://sourceforge.net/projects/varscan/files/

## http://varscan.sourceforge.net/index.html

mkdir VarScan  &&  cd VarScan

wget https://sourceforge.net/projects/varscan/files/VarScan.v2.3.9.jar


cd ~/biosoft

mkdir SnpEff &&  cd SnpEff

## http://snpeff.sourceforge.net/

## http://snpeff.sourceforge.net/SnpSift.html

## http://snpeff.sourceforge.net/SnpEff_manual.html

wget http://sourceforge.net/projects/snpeff/files/snpEff_latest_core.zip

## java -jar snpEff.jar download GRCh37.75

## java -Xmx4G -jar snpEff.jar -i vcf -o vcf GRCh37.75 example.vcf > example_snpeff.vcf

unzip snpEff_latest_core.zip


## https://github.com/najoshi/sickle

cd ~/biosoft

mkdir sickle && cd sickle

wget https://codeload.github.com/najoshi/sickle/zip/master -O sickle.zip

unzip sickle.zip

cd sickle-master

make

~/biosoft/sickle/sickle-master/sickle -h


cd ~/biosoft

## http://www.usadellab.org/cms/?page=trimmomatic

## http://www.usadellab.org/cms/uploads/supplementary/Trimmomatic/TrimmomaticManual_V0.32.pdf

mkdir Trimmomatic && cd Trimmomatic

wget http://www.usadellab.org/cms/uploads/supplementary/Trimmomatic/Trimmomatic-0.36.zip

unzip Trimmomatic-0.36.zip

java -jar ~/biosoft/Trimmomatic/Trimmomatic-0.36/trimmomatic-0.36.jar -h


有人专门做软件的测评报告:

软件安装我写过教程,而且还制作了视频哦:


文:Jimmy、吃瓜群众

图文编辑:吃瓜群众




您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存