前言:因为最近陆陆续续接手了几个
物种的
基因组项目,这也是生信分析中很大的一块。其中最基础的是组装和注释(当然我们实验室也做组装方法学的研究)。现在随着很多物种基因组的发表,纯基因组想发个很好的文章没有新颖的故事感觉也挺难的。看最近关于基因组的文章,尤其是已经release过的物种,好像都是在炒泛基因组/SV的概念。因为我们做的是多倍体物种,所以更多的就牵扯到多倍体进化,物种的比较等等比较基因组学的内容。所以最近一直在陆陆续续的系统学习一些这方面的分析。 先介绍几个概念。 Orthologs(
直系同源物)是在两个物种的最后共同祖先(LCA)中来自单个基因的一对基因。直系同源物是同源性基因,是物种形成事件的结果。Paralogs(旁系同源物)是同源基因,是重复事件的结果。下图就可以看到,不同物种间的alpha-chain gene互为Orthologs(直系同源物)。这时候可以引用一个新名词orthogroup (正交群)就用来形容自一组物种的LCA中的单个基因的基因组(在图中就是alpha chain gene)。然后同一物种间alpha 和beta chain gene互为Paralogs(旁系同源物)。最后所有这些关系都可以由OrthoFinder来识别。在介绍基因家族收缩和扩张之前,有一个概念是绕不过去的,就是基因家族。 基因家族(gene family),是来源于同一个祖先,由一个基因通过基因重复而产生两个或更多的拷贝而构成的一组基因,它们在结构和功能上具有明显的相似性,编码相似的蛋白质产物,同一家族基因可以紧密排列在一起,形成一个基因簇,但多数时候,它们是分散在同一染色体的不同位置,或者存在于不同的染色体上的,各自具有不同的表达调控模式。在基因组项目中,通常会选择自己要研究的物种和其近缘的物种通过比对来寻找基因家族。 谈论到直系同源基因分析的时候,大部分教程都是介绍OrthoMCL,这是2003年发表的一个工具,目前的引用次数已经达到了3000多,但这个软件似乎在2013年之后就不在更新,而且安装时还需要用到MySQL(GitHub上有人尝试从MySQL转到sqlite)。 而OrthoFinder则是2015年出现的软件,目前已有400多引用。该软件持续更新,安装更加友好,因此决定使用它来做直系同源基因的相关分析。 那么,OrthoFinder能做什么? OrthoFinder: solving fundamental biases inwhole genome comparisons dramatically improves orthogroup inference accuracy提到,它的优点就是比其他的直系同源基因组的推断软件准确,并且速度还快。 此外它还能分析所提供物种的系统发育树,将基因树中的基因重复事件映射到物种树的分支上,还提供了一些比较基因组学中的统计结果。 OrthoFinder的分析过程分为如下几步: 1. BLAST all-vs-all搜索。使用BLASTP以evalue=10e-3进行搜索,寻找潜在的同源基因。(除了BLAST, 还可以选择DIAMOND和MMSeq2) 2. 基于基因长度和系统发育距离对BLAST bit得分进行标准化。 3. 使用RBNHs确定同源组序列性相似度的阈值 4. 构建直系同源组图(orthogroup graph),用作MCL的输入 5. 使用MCL对基因进行聚类,划分直系同源组OrthoFinder2在OrthoFinder的基础上增加了物种系统发育树的构建,流程如下: 1. 为每个直系同源组构建基因系统发育树 2. 使用STAG算法从无根基因树上构建无根物种树 3. 使用STRIDE算法构建有根物种树 4. 有根物种树进一步辅助构建有根基因树 5. 基于Duplication-Loss-Coalescent 模型,有根基因树可以用来推断物种形成和基因复制事件,最后记录在统计信息中。===安装=== 对于我这种安装软件总是无能的人,conda真是拯救了我。 conda install -c bioconda -c conda-forge orthofinder ==测试例子运行=== orthofinder -f ExampleData -S mmseqs 注: -f 指定文件夹 -S 指定序列搜索程序,有blast,mmseqs, blast_gz, diamond可用 so easy!!! OrthoFinder的基本使用就是如此简单,而且最终效果也基本符合需求。 如果你想根据多序列联配(MSA)结果按照极大似然法构建系统发育树,那么你需要加上-M msa。这样结果会更加准确,但是代价就是运行时间会更久,这是因为OrthoFinder要做10,000 - 20,000个基因树的推断。 OrthoFinder默认用mafft进行多序列联配,用fasttree进行进化树推断。多序列联配软件还支持muscle, 进化树推断软件还支持iqtree, raxml-ng, raxml。例如参数可以设置为-M msa -Amafft -T raxml. 并行化参数: -t参数指定序列搜索时的线程数,-a指的是序列搜索后分析的CPU数。 ===结果文件=== 运行结束后,会在ExampleData里多出一个文件夹,Results_ Jun07, 其中Jun07是我运行的日期 (1) Results Files: Orthogroups 包含一个主文件“Orthogroups.csv”和两个支持文件: Orthogroups.csv,每一行为一个group,每一列为一个物种,行列交汇处为基因名称。 Orthogroups_UnassignedGenes.csv,包含所有未分配到任何group的基因名称。 Orthogroups.txt,OrthoMCL格式的输出结果,内容等同于Orthogroups.csv。 (2)Results Files: Comparative_Genomics_Statistics 包含一些统计数据,可用于比较基因组分析、绘图以及质控。 Statistics_Overall.csv和Statistics_PerSpecies.csv,提供基本的描述信息 Orthogroups_SpeciesOverlaps.tsv,两两物种的group共享矩阵 - G50:group中的基因数,使得50%的基因处于该大小或更大的group中。 - O50:最小数量的group,使得50%的基因处于该大小或更大的group中。 - Number of single-copy orthogroups:每个物种中只有一个基因的group(相当于单拷贝核心基因)。这些group是构建物种树和许多其他分析的理想选择。 - Unassigned gene:未与任何其他基因划分到一个group的基因。 (3) Results Files: Orthologues 两两物种间的直系同源基因,每一行为一个group,第一列为group编号,第二列为第一个物种的基因,第三列为第二个物种的基因。同一物种的基因名以“,”分割。直系同源物可以是一对一,一对多或多对多。 (4) Results Files: Gene_Trees and Species_Tree 每个group的基因树和定根的物种树以newick格式输出,可以用各种看树软件展示,如MEGA、iTOL、Dendroscope和FigTree等,个人推荐用iTOL。例子的species的tree展示:===其它用法=== 1. 添加新物种到之前的分析(previous_orthofinder_directory指的是包含“SpeciesIDs.txt”的目录) orthofinder -bprevious_orthofinder_directory -f new_fasta_directory 2. 从之前的分析中移除物种 从输出目录下找到工作目录“WorkingDirectory”中的“SpeciesIDs.txt”文件,在要移除的物种那一行最前面加上一个“#”并保存,然后运行(previous_orthofinder_directory指的是包含“SpeciesIDs.txt”的目录): orthofinder -bprevious_orthofinder_directory 3. 同时添加和删除物种 编辑好“SpeciesIDs.txt”后,运行: orthofinder -b previous_orthofinder_directory-f new_fasta_directory1. Ceph
Ceph是一个强大的存储系统,它在同一个系统中同时提供了对象,块(通过RBD)和文件存储。无论您是希望在虚拟机中使用块设备,还是将非结构化数据存储在对象存储中,Ceph都可以在一个平台上提供所有功能,并且还能获得出色的灵活性。 Ceph中的所有内容都以对象的形式存储,不管原始的数据类型是什么,RADOS(reliable autonomic distributed object store)都会把它们当做对象来进行存储。
RADOS层确保数据始终保持一致状态并且可靠。Ceph会通过数据复制,故障检测和恢复,以及跨群集节点进行数据迁移和重新平衡来实现数据一致性。 Ceph提供了一个符合POSIX的网络文件系统(CephFS),旨在实现高性能,大数据存储以及与传统应用程序的最大兼容。Ceph可以通过各种编程语言或者radosgw(RGW)实现无缝的访问对象存储,(RGW)这是一种REST接口,它与为S3和Swift编写的应用程序兼容。另一方面,Ceph的RADOS块设备(RBD)可以访问在整个存储集群中条带化和复制的块设备映像。
Ceph的特性
独立、开放和统一的平台:将块,对象和文件存储组合到一个平台中,包括最新添加的CephFS
兼容性:您可以使用Ceph 存储对外提供最兼容Amazon Web Services(AWS)S3的对象存储。
精简配置模式:分配存储空间时,只是虚拟分配容量,在跟进使用情况占用实际磁盘空间。这种模式提供了更多的灵活性和磁盘空间利用率。
副本:在Ceph Storage中,所有存储的数据都会自动从一个节点复制到多个其他节点。默认任何时间群集中的都有三份数据。
自我修复:Ceph Monitors会不断监控你的数据集。一旦出现一个副本丢失,Ceph会自动生成一个新副本,以确保始终有三份副本。
高可用:在Ceph Storage中,所有存储的数据会自动从一个节点复制到多个其他的节点。这意味着,任意节点中的数据集被破坏或被意外删除,在其他节点上都有超过两个以上副本可用,保证您的数据具有很高的可用性。
Ceph很强大:您的集群可以用于任何场景。无论您希望存储非结构化数据或为数据提供块存储或提供文件系统,或者希望您的应用程序直接通过librados使用您的存储,而这些都已经集成在一个Ceph平台上了。
可伸缩性:C
评论列表(0条)