我们是如何在阿里云上搭建人全基因组数据分析与解读流程

本文正在参加“最佳上云实践”评选,来给我们投票吧:(编号14)

公司成立于2014年,取名基云惠康,立志通过基因来惠及大众健康,公司的口号是知基因,惠健康。惠健康的第一步就是要知基因,知基因就要对基因数据进行分析与解读。要知道人全基因组测序的原始数据一般在300G左右,压缩为fastq格式也要60G左右,怎么快速低成本的分析这些数据是一个比较棘手的问题。

公司成立之初,原打算是自己购买服务器搭集群,后来由于种种原mei因qian,加之“云”的大势所趋,我司boss就决定将基因数据分析流程搭建在云上。那时中国的天空就那么几朵云,AWS刚进入中国;阿里云可选服务产品还很少;腾讯云还未正式商用;百度云那时还指的是百度个人网盘。经过综合分析对比,加之基因数据比较敏感,最终选定了阿里云。

最初,服务少,条件苦,我司直接在阿里云上买了几台ECS服务器,组建成一个小集群,在集群上搭建了半自动数据分析流程。分析一个人全基因组数据还需要手动调用资源,拼接分析流程,完成一个样本的分析成本很高,时间也很长。

2014年末阿里云的林河山告诉我们他们开发了一款强大的计算服务,称之为“帝喾”(阿里云内部似乎比较偏爱上古皇帝),邀请我们内zhao测bug。在阿里云技术团队的支持下我们用了一周左右的时间将数据分析流程搭建到了帝喾上。搭建成功后又用了近一个月的时间找bug、修复调整后V1.0版本的分析流程终于正式出阁待客了,15年7月阿里云在云栖大会正式发布了帝喾服务,改名为批量计算。应该说我司基云惠康是首家将基因数据分析业务部署到阿里云上的公司,在一定程度上促使了阿里云形成了现如今的生物基因解决方案。我们经历了批量计算从杭州到深圳再到青岛的迁移,每次迁移也是批量计算一次大的升级,每次迁移升级后我司的技术人员就会对数据分析流程进行针对性的调整升级,在调整过程中就会发现批量计算中的一些bug并反馈给阿里云。到目前为止,我司已在批量计算上分析了上千的人的基因样本数据,经过不断的调整优化,数据分析成本已降到了很低。

俗话说时间就是金钱,这在使用“云”分析基因数据时体现的淋漓尽致。要想分析时间短,就需要更多的计算资源,相应的成本就会直线上升,而要想节约成本,就需要以时间换取资源。在保证数据分析结果准确性的前提下,我们经过大量样本的分析摸索,取得了时间和成本上的最佳平衡。在12个小时之内完成一个人全基因组数据分析,成本做到了不足百元。数据分析的成本已开始低于数据存储的成本。

说了这么多,接下来讲讲我们都使用了阿里云的哪些服务,搭建的数据分析流程是什么。先上一张阿里云的生物基因解决方案中的数据分析平台架构图。

个人认为阿里云提供的这个解决方案架构还是很完善的,基于我们公司的现实情况,目前除了归档存储、表格存储外其他的产品都在使用中,而归档存储和表格存储也计划在今年去实施来解决遇到的一些问题中。

基因数据存储可选的服务有OSS和归档存储,基云惠康承诺为合作伙伴永久免费存储所有样本数据,阿里云对象存储1T/年收费1839.6元,存储近万个样本数据对我们创业公司来说,存储成本压力还是很大的。在16年中旬的时候,就有消息传出阿里云的OSS要推出冷存储,但至今也未见得正式商用或者内测。为缓解存储成本压力,准备将超1年未使用的样本数据转存到归档存储中,同时希望冷存储尽快发布。

基因数据分析模块有ECS和批量计算。我们使用一台ECS作为批量计算的镜像,一台ECS作为分析流程交互服务器,使用批量计算来进行数据分析。完成一个人的全基因组数据分析大概需要使用500核时的计算资源。

安全与监控模块有基础防护、安骑士和云监控,对这些服务的使用是必须的,无需多说。基云惠康对基因数据的保护除使用阿里云自身提供的安全防护外,还使用了自研的三层加密隔离防护技术。

数据库存储包括了RDS、Redis、TableStore。对基云惠康来说,使用了RDS中的mysql关系数据库来存储样本的解读报告等数据。Redis作为我司对外提供解读服务的缓存加速服务。计划使用TableStore表格存储解读后的用户突变数据。

Web服务中http服务器和负载均衡不再赘述。

说完整体架构图,接下来详细说明一下我司如何在批量计算上运行基因组数据分析业务的。

这是我司使用批量计算服务处理人基因组数据作业的有向无环图,图例中的每个节点都是流程的一个任务,每个任务又包含多个处理步骤,对应调用的资源也不尽相同。

  1. data_preparation,为基因组数据准备任务,包括数据完整性验证、数据质量校验等。
  2. split_R1和split_R2,双端测序两个fastq文件的切分job,每个切分步骤中又包括了gz文件解压、数据切分、压缩成gz格式等任务。
  3. QC_mapping,该任务会根据上一步切分的文件个数启用相应个数的实例,每个实例处理同一编号R1和R2两个文件,包括对文件进行BWA比对,使用samtools将得到的bam文件按照染色体输出任务,每个实例得到1-22,X,Y,M共25个bam文件。
  4. Mergechr_Analysis,这一步会启用25个实例,分别处理包括MT在内的25个染色体对应的bam文件,将每条染色体零散的bam文件合并成对应染色体完整的bam文件并进行dup操作,染色体数据统计和cnv的检测。
  5. gatk0、gatk1、gatk2、gatk3,将得到的比对后的bam文件使用GATK软件进行变异检测。检测突变的过程包括了RealignerTargetCreator、IndelRealigner、BaseRecalibrator、PrintReads、UnifiedGenotyper、VariantRecalibrator、ApplyRecalibration等过程。如果对GATK的变异检测流程感兴趣可以到GATK官网具体查询。
  6. Mergebam,该任务是将包括MT在内的25条染色体bam文件合并成一个完整的bam文件,并对数据进行一些统计工作以进行后续的分析。
  7. MarkDuplicates,去除PCR重复reads。
  8. SV,用来检测结构变异及注释。
  9. result,汇总最终得到的结果文件,这些结果包括了突变结果(snp、indel、cnv、sv等)、数据质控和统计结果、bam文件等。

整个人全基因组数据分析下来耗时12个小时左右,共使用500核时左右的资源,使用批量计算的成本控制在了两位数,比最开始直接在ECS上搭建分析流程节省了近90%的成本。

在成本节省的同时,批量计算服务使大批量的基因数据同时分析成为可能,目前已实际运行过同时提交100个全外显子组数据,在12个小时内全部分析完成。

最后打个广告,我司从成立到现在再到未来,一直都专注于人的基因组数据分析与解读。依托于阿里云,我们为合作伙伴提供一站式基因产品解决方案的标准服务、根据行业场景需求的定制服务、超4000+项的解读对接服务和基因应用开发服务。

网站:http://www.genekang.com

联系电话:400-626-1023

时间: 2024-10-27 08:43:15

我们是如何在阿里云上搭建人全基因组数据分析与解读流程的相关文章

阿里云上搭建Docker Swarm模式集群最佳实践

Docker技术体系和生态在2016年得到飞速发展.成熟,在2016中国容器技术调研报告中也发现了国内绝大部分用户都在关注 Docker,80%的用户都会考虑使用容器技术.那如何能快速的在阿里云上搭建Docker集群呢?本文将讲解如何利用资源编排快速搭建Docker Swarm 模式集群,本例子中将安装Docker1.12,在Docker1.12中提供了Swarm模式,将一组Docker Engine构成一个集群统一管理.调度. 集群架构图如下: 如果已有VPC网络和NAT网关,可以跳过第一步,

玩转阿里云上Kubernetes 1.7.2 高可用部署

随着Kubernetes社区的不断壮大,其版本不断更迭,新功能及BugFIX也不断更新,促使其部署方式也不断的变化,本文将带您在阿里云上快速的部署一个高可用的Kubernetes集群.并且添加阿里云CloudProvider支持,让您可以方便的自由的使用阿里云上的SLB,NAS,阿里云盘,VPC网络等云资源. 部署结构图 如上图,脚本通过执行SSH命令的方式部署一个M + N节点的Kubernetes集群,M=Number(Master) N=Number(Worker). 支持VPC网络,确保

阿里云+wordpress搭建个人博客网站【小白专用的图文教程】

[正文]  在阿里云上搭建使用个人博客主要分为以下几个步骤: 1.购买阿里云ECS主机 2.购买域名 3.申请备案 4.环境配置 5.安装wordpress 6.域名解析 声明一下,本人对服务器端的知识不是很熟悉,但一心想做个自己的个人网站装一下哔,特此记录一下完整的配置过程,也算是给其他小白们的一剂福利吧.   开发环境: 物理机版本:Win 7 旗舰版(64位) xshell版本:Xshell 5 Build 0806 xftp版本:Xftp 5 Build 0780 wordpress版本

从运维的角度分析使用阿里云数据库RDS的必要性--你不应该在阿里云上使用自建的MySQL/SQL Server/Oracle/PostgreSQL数据库

开宗明义,你不应该在阿里云上使用自建的MySQL or SQL Server数据库,对了,还有Oracle or PostgreSQL数据库. 云数据库 RDS(Relational Database Service)是一种稳定可靠.可弹性伸缩的在线数据库服务.基于飞天分布式系统和全SSD盘高性能存储,支持MySQL.SQL Server.PostgreSQL和PPAS(高度兼容Oracle)引擎,默认部署主备架构且提供了容灾.备份.恢复.监控.迁移等方面的全套解决方案. 当然,并不是指所有用户

在阿里云上部署生产级别Kubernetes集群

阿里云是国内非常受欢迎的基础云平台,随着Kubernetes的普及,越来越多的企业开始筹划在阿里云上部署自己的Kubernetes集群.本文将结合实战中总结的经验,分析和归纳一套在阿里云上部署生产级别Kubernetes集群的方法.文中所采取的技术方案具有一定的主观性,供各位读者参考.在实践中可以根据具体使用场景进行优化. 目标 当我们刚接触Kubernetes进行测试集群的搭建时,往往会选择一篇已有的教程,照着教程完成集群搭建.我们很少去质疑教程作者每一步操作的合理性,只想快点把集群搭建起来,

携手阿里 “云上贵州”再发力

--7+N云工程观摩汇报会暨阿里云开发者大会西南峰会将在贵阳召开 本文讲的是携手阿里 "云上贵州"再发力,12月11日消息,贵州联合阿里巴巴将于本月20日-22日在贵阳联合举办"7+N云工程观摩汇报会暨阿里云开发者大会西南峰会",旨在向开发者展示"云上贵州"建设成果,吸引大数据开发者向西南聚集,与贵州一起发展大数据产业. 据悉,此次西南峰会是阿里首次将开发者大会放在杭州以外举办,显示了其对贵州发展大数据产业的认同与支持.届时,阿里云计算平台上长出

阿里云上SAP高可用配置

1.部署架构          比较典型的SAP应用是搭建在小型机UNIX系统上的,小型机都有厂家提供的HA软件,比如IBM的PowerHA.这样的方案也是被SAP认证通过的.目前,SUSE LINUX也是被SAP认证通过的,但是在云上,尤其是HA的方案,还没有完全成型,本文档重点探索的就是如何在阿里云ECS Linux环境搭建一套可行的HA方案提供给SAP系统使用.          我们以SAP AFS(Apprarel and Footwear Solution),即SAP在服装鞋帽行业的

阿里云上CentOS的图形访问

因为阿里云给学生白菜价格购买ECS,那我就买来玩玩,顺便用来学习Linux/UNIX.买回来之后,发现闲着也是闲着,就现在上边搭了个博客,用 WordPress.因为WordPress这个建站很厉害,但是以前在自己的电脑上,不想为了玩一下wordpress 配置一堆东西,把电脑搞乱了,所以一直用的 Hexo这个用node.js写的轻量博客系统,挂在Github上. <!--more--> 这个新的博客先放在二级域名上 new.xuelinf.cc ,不过阿里云上建站要备案,目前还在备案中(备案

安全态势,交互发现 —— 基于阿里云轻松搭建安全大屏

2017年,阿里云启动MVP(Most Valuable Professional)项目.顾名思义,MVP正在寻找阿里云最有价值专家,那些能够,并且愿意帮助他人,充分了解和使用阿里云技术的意见领袖. 本文是阿里云MVP 傅奎的实践分享,今天和大家讲讲 "安全态势,交互发现 -- 基于阿里云轻松搭建安全大屏 " 一句话概述 背景介绍 产品介绍 需求分析 实现方法 导出态势感知 DNS 日志 定制返回 JSON 串的数据源API 定制 DataV 大屏,指定 API 数据源 发布监控大屏,