面向生物组学大数据计算的云平台系统及方法

文档序号:10655816阅读:341来源:国知局
面向生物组学大数据计算的云平台系统及方法
【专利摘要】本发明公开了一种面向生物组学大数据计算的云平台系统及方法,涉及用于维护或管理的装置技术领域。所述系统包括系统管理模块、数据管理模块、应用程序管理模块、流程管理模块、任务管理模块、数据可视化操作模块以及用户与权限管理模块。所述云平台系统利用高性能计算集群系统的分布式计算和管理模式,并利用WEB技术及计算机远程调用、远程控制以及云计算等技术手段,实现与高性能计算集群系统的无缝连接,实现对大数据的管理与利用,并实现对生物组学大数据的在线、可视化、自由定制流程与工具的深度挖掘、分析与利用。系统可促进高性能集群计算系统在生物组学大数据领域的应用,也可促进生物组学大数据的深度挖掘、分析与产业化应用。
【专利说明】
面向生物组学大数据计算的云平台系统及方法
技术领域
[0001]本发明涉及用于维护或管理的装置技术领域,尤其涉及一种面向生物组学大数据计算的云平台系统及方法。【背景技术】
[0002]现有技术中Galaxy平台集成了若干个生物信息数据分析常用的软件,用户可以在 Galaxy平台上利用这些已经集成的软件创建自己的工作流,在线提交计算分析任务并查看计算结果。但Galaxy不支持对高性能集群系统的在线管理及软件对系统(硬件)资源的按需配置。Taverna集成了许多大型网站提供的常用计算分析软件的web service。用户可以使用这些web service在Taverna提供的图形界面中创建工作流,并在线执行工作流。但有和 Galaxy同样的弊端即不支持对高性能集群系统的在线管理及软件对系统(硬件)资源的按需配置。BGI online是国产产品,但使用模式属于直接给用户提供标准化的计算分析流程, 但不能支持用户自主创建计算流程。
【发明内容】

[0003]本发明所要解决的技术问题是提供一种面向生物组学大数据计算的云平台系统及方法,所述系统具有方便部署、使用简单、应用程序与流程创建方式多样化以及易于扩展的特点。
[0004]为解决上述技术问题,本发明所采取的技术方案是:一种面向生物组学大数据计算的云平台系统,其特征在于所述云平台系统包括系统管理模块、数据管理模块、应用程序管理模块、流程管理模块、任务管理模块、数据可视化操作模块以及用户与权限管理模块, 所述系统管理模块用于实现云平台与高性能集群计算资源的无缝桥接,并通过云平台对高性能集群计算资源进行动态管理与资源配置;所述数据管理模块用于对上传的数据或结果数据进行分析,实现云平台对生物组学大数据的动态管理;所述应用程序管理模块用于实现应用程序的可视化创建与动态管理;所述流程管理模块用于实现用户按需定制流程;所述任务管理模块用于实现WEB化在线提交作业及任务运行管理;所述数据可视化操作模块用于实现生物组学大数据的在线可视化管理与利用;所述用户与权限管理模块用于实现系统用户、组以及对应权限的动态分配与管理。
[0005]进一步的技术方案在于:在数据管理模块中,根据数据的不同来源,划分四个不同的数据空间,即集群数据空间、私有数据空间、共享数据空间和公共数据空间;集群数据空间用于用户从界面上加载用户在集群工作目录上的数据,该空间数据用于查看或者提交计算任务;私有数据空间用于管理用户上传的数据或者结果分析数据,支持数据查看、删除、 目录创建、重命名操作;公共数据空间用于存放系统整理好的公共物种数据,用于提交计算或者查看;共享数据空间用于存放用户共享的数据,用户根据共享时指定的操作权限进行操作。
[0006]进一步的技术方案在于:在应用程序管理模块中用户根据界面提示信息填写输入、输出参数信息,提交应用程序脚本、测试数据以及部署测试文档,应用程序在通过系统验证后,系统将自动为用户生成应用程序详细表单,同时,在表单中植入高性能集群资源参数,创建好的应用程序可被修改、删除、共享给他人或者发布。
[0007]进一步的技术方案在于:应用程序管理模块还用于通过XML文件导入的模式创建应用程序,XML文件用于根据程序实体对象生成应用程序或者流程存储模型,并将模型数据转化成JS0N数据格式,用于可视化显示以及提交任务时的消息通讯实体。
[0008]进一步的技术方案在于:所述任务管理模块用于记录任务运行状态、提交参数、删除或者暂停执行任务;同时,该模块实现计算任务的动态更新;该模块中计算任务状态更新的模块是一个常驻线程模块,随前端服务的启动而启动,循环扫描当前还未结束的任务,并且调用中间件的作业状态服务获取集群端中任务的执行状态,更新本地任务状态。
[0009]进一步的技术方案在于:用户可对GFF、BED、BAM、Bi gWi g基因组结果数据利用数据可视化操作模块进行数据的在线查看。
[0010]进一步的技术方案在于:在所述云平台系统的分布式架构的设计中,采用四类消息中间件服务实现服务之间的动态交互:
[0011]1)任务提交服务,当用户从应用程序界面中提交任务时,将触发该服务在高性能计算集群上提交一个新任务;
[0012]2)数据服务,当用户上传文件或者在线查看与数据相关的操作时,将触发该服务, 该服务将实际操作高性能计算集群上对应的存储;
[0013]3)作业日志服务,当用户查看任务状态将触发该服务,该服务能访问在高性能计算集群上运行的任务状态;[〇〇14]4)集群资源服务,当用户查看集群资源时,将触发该服务,该服务能返回当前集群头结点上的资源占用情况;
[0015]在消息中间件中还加入了一个工作流引擎包,用于处理实际的任务提交、任务监控。
[0016]进一步的技术方案在于:数据服务中开发的服务有:
[0017]文件上传服务:将用户本地文件上传到高性能集群对应的存储路径上;
[0018]文件下载服务:将存储上的文件下载到本地;
[0019]文件删除服务:删除存储上对应的文件;
[0020]创建文件夹:在存储对应的路径下创建文件夹;[0021 ]列目录服务:列出对应存储路径下所有的内容。
[0022]本发明还公开了一种面向生物组学大数据的计算方法,其特征在于所述方法包括如下步骤:[〇〇23]1)系统管理员在所述的系统的系统管理模块中录入生物集群资源信息并设置系统正常运行需要的信息;[〇〇24]2)用户上传自己的数据文件到数据管理模块中的私有数据空间中;
[0025]3)用户通过应用程序管理模块打开应用程序创建界面,根据界面提示信息配置应用程序;[〇〇26]4)管理员验证用户提交的应用程序,触发应用程序管理模块中的提交页面生成模块,生成应用程序提交页面;
[0027]5)用户打开应用程序提交界面,从私有数据空间中选择数据、设置计算参数,并选择结果存放路径,提交计算任务;
[0028]6)所述系统调用应用程序管理模块中的应用程序提交模块,解析用户填写的参数,并触发消息中间件中的任务提交服务;
[0029]7)任务提交服务触发工作流引擎的任务提交,提交计算任务到计算集群上,并返回任务的Job ID给页面前端;
[0030]8)用户在任务管理模块中查看任务状态;[0031 ]9)任务运行结束,用户点击任务列表中的链接获取计算结果。
[0032]采用上述技术方案所产生的有益效果在于:1)轻量级的系统架构,方便部署:整个系统基于J2EE系统架构进行开发,具有很好的可移植性。BIG-Cloud(云平台系统)在系统架构上分为了两部分,一是web前端,二是消息中间件。Web前端可以部署在单独的服务器上, 与集群头节点解耦,提高集群系统的安全性。[〇〇33]2)集成高性能计算集群资源,简化使用:BIG-Cloud的系统管理模块中,配备了机器管理、计算队列管理、用户集群账号管理、用户存储空间管理等多个与高性能计算集群相关的多个功能模块。管理员用户可以直接通过这些模块来配置已有集群资源。配置完成的这些信息将直接作用在数据管理模块以及应用程序或者流程提交页面上。用户可以通过数据管理模块直接同步操作集群的存储资源,在应用程序或者流程提交页面上选择集群资源。通过这种方式,简化了集群系统使用的方法。
[0034]3)多样化的数据空间配置以及友好的用户操作界面
[0035]BIG-Cloud中为用户划分了4个数据空间模块,即集群数据空间、私有数据空间、共享数据空间和公共数据空间,从而满足用户不同的数据操作需求。在数据空间界面上,提供了多个操作。用户在当前页面中可以完成对数据的多种操作,不需要进行频繁的页面跳转。
[0036]4)多样化的应用程序与流程创建方式[〇〇37] BIG-Cloud中集成了多个工作流系统中的应用程序与流程的创建方式,提供多种创建方式供用户使用。应用程序创建支持:在线表单创建、XML创建、URL引入。流程创建支持:在线表单创建、XML、URL引入以及图形化界面创建。[〇〇38]5)多样化的计算结果查看方式[〇〇39]用户可以在线查看图片或者数据文件。BIG-Cloud还提供多种图形化应用程序如饼图、线图、直方图等,供用户可视化显示一些统计结果数据。BIG-Cloud中还提供将一些格式化文件如BED,GFF等在线加载到UCSC Genome Browse中,从而让用户更清楚查看数据的特性。BIG-Cloud中集成了 JBrowse,用户在线查看基因组相关的注释数据。
[0040]6)易扩展的消息中间件(web服务)
[0041]消息中间件中与集群作业调度系统交互的部分,采用模块化和配置的设计方法。 当要加入新的作业调用系统时,只需要扩展对应的模块进行配置即可。[〇〇42]综上,所述系统是针对高性能集群计算系统量身定制的生物组学大数据存储管理、挖掘利用、共享发布为一体的综合性解决方案。系统利用高性能计算集群系统的分布式计算和管理模式,利用WEB技术及计算机远程调用、远程控制以及云计算等技术手段,实现与高性能计算集群系统的无缝连接,实现对大数据的管理与利用,并实现对生物组学大数据的在线、可视化、自由定制流程与工具的深度挖掘、分析与利用。系统可促进高性能集群计算系统(设备)在生物组学大数据领域的应用,也可促进生物组学大数据的深度挖掘、分析与产业化应用。【附图说明】
[0043]下面结合附图和【具体实施方式】对本发明作进一步详细的说明。[〇〇44]图1是本发明所述系统的原理框图。【具体实施方式】
[0045]下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046]在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。[〇〇47]如图1所示,本发明公开了一种面向生物组学大数据计算的云平台系统,包括系统管理模块、数据管理模块、应用程序管理模块、流程管理模块、任务管理模块、数据可视化操作模块以及用户与权限管理模块。[〇〇48]系统管理模块:实现云平台与高性能集群计算资源的无缝桥接,实现通过云平台对高性能集群计算资源的动态管理与资源配置。[〇〇49]数据管理模块:主要针对上传数据或者结果数据分析的操作,实现云平台对组学大数据的动态管理。在数据管理中,根据数据的不同来源,划分了四个不同的数据空间,即集群数据空间、私有数据空间、共享数据空间和公共数据空间。不同的数据空间具有不同的管理权限。集群数据空间用于用户从界面上加载用户在集群工作目录上的数据,该空间数据只能用于查看、或者提交计算任务。私有数据空间,用于管理用户上传的数据或者结果分析数据。支持数据查看、删除、目录创建、重命名等操作。公共数据空间用于存放系统整理好的公共物种数据,只能用于提交计算或者查看。共享数据空间,用于存放用户共享的数据。 用户可以根据共享时指定的操作权限进行操作。
[0050]应用程序管理模块:实现应用程序的可视化创建与动态管理。用户需要根据界面提示信息填写输入、输出参数信息,提交应用程序脚本、测试数据以及部署测试文档。应用程序在通过系统验证后,系统将自动为用户生成应用程序详细表单,同时,在表单中植入高性能集群资源参数。创建好的应用程序可被修改、删除、共享给他人或者发布。本平台还实现通过XML文件导入的模式创建应用程序。XML文件用于根据程序实体对象生成应用程序或者流程存储模型,并将模型数据转化成JS0N数据格式,用于可视化显示以及提交任务时的消息通讯实体。此外,该模块还需要解析XML文件,生成程序实体对象。
[0051]流程管理模块:实现用户按需定制流程。用户需要根据界面提示信息选择应用程序,设置应用程序之间的输入输出关系。系统将自动为用户生成提交页面。创建好的流程可被修改、删除、共享或者发布。
[0052]任务管理模块:实现WEB化在线提交作业及任务运行管理。用于记录任务运行状态、提交参数、删除或者暂停执行任务。同时,该模块实现计算任务的动态更新。本云平台中的计算任务状态更新模块是一个常驻线程模块,随前端服务的启动而启动。它循环扫描当前还未结束的任务,并且调用中间件的作业状态服务获取集群端中任务的执行状态,更新本地任务状态。
[0053]数据可视化模块:实现组学大数据的在线可视化管理与利用。用户可对特定格式的基因组结果数据如6??、8£0、841〇18118等利用该模块进行数据的在线查看。[〇〇54]用户与权限管理模块:实现系统用户、组以及对应权限的动态分配与管理。
[0055]同时,在分布式架构的设计中,采用4类消息中间件服务技术实现服务之间的动态交互,主要包括:
[0056]任务提交服务(NewTask):当用户从应用程序界面中提交任务时,将触发该服务在高性能计算集群上提交一个新任务。[〇〇57]数据服务(DataService):当用户上传文件或者在线查看结果等一些与数据相关的操作时,将触发该服务。该服务将实际操作高性能计算集群上对应的存储。开发的服务有:[〇〇58]文件上传服务:将用户本地文件上传到高性能集群对应的存储路径上。
[0059]文件下载服务:将存储上的文件下载到本地。
[0060]文件删除服务:删除存储上对应的文件[0061 ]创建文件夹:在存储对应的路径下创建文件夹
[0062]列目录服务:列出对应存储路径下所有的内容[〇〇63] 作业日志服务(TracelogService):当用户查看任务状态将触发该服务。该服务能访问在高性能计算集群上运行的任务状态。[0〇64] 集群资源服务(ClusterResourceService):当用户查看集群资源时,将触发该服务,该服务能返回当前集群头结点上的资源占用情况。在消息中间件中还加入了一个工作流引擎包,用于处理实际的任务提交、任务监控。
[0065]相应的本发明还公开了一种面向生物组学大数据的计算方法,所述方法包括如下步骤:[〇〇66]系统管理员在BIG-Cloud的系统管理模块中录入集群资源信息以及设置其他系统正常运行需要的信息;[〇〇67]用户上传自己的数据文件到数据管理模块中的私有数据空间中;
[0068]用户打开应用程序创建界面,根据界面提示信息配置应用程序;[〇〇69]管理员验证用户提交的应用程序,触发提交页面生成模块,生成应用程序提交页面;
[0070]用户打开应用程序提交界面,从私有数据空间中选择数据、设置计算参数,并选择结果存放路径,提交计算任务;
[0071]BIG-Cloud调用应用程序提交模块,解析用户填写的参数,并触发消息中间件中的任务提交服务;
[0072]任务提交服务触发工作流引擎的任务提交,提交计算任务到计算集群上,并返回任务的Job ID给页面前端;[〇〇73]用户在任务管理中查看任务状态;[0〇74]任务运行结束,用户点击任务列表中的“View Results”链接获取计算结果。[〇〇75]集群资源配置:在云平台系统中针对高性能计算资源开发了机器管理模块、磁盘管理模块、作业队列管理模块。在机器管理中主要填写头结点的IP、头结点作业提交命令、 作业运行状态查询命令以及在头结点上部署的中间件服务的URL信息等;在磁盘管理模块中主要填写头结点上挂载的存储名称、容量、购买时间等信息;作业队列管理模块中主要填写头结点上能提交的作业队列名称、节点数、单任务使用的最大核数、最大内存等信息。 [〇〇76] 集群资源参数应用:当用户通过BIG-Cloud配置应用程序时,BIG-Cloud中的应用验证模块会根据系统指定的头结点,去数据库表中查询该头结点的队列信息,并将这些队列参数生成在应用界面上,包括作业队列名称,单任务使用的核数,内存。当用户在界面上选择不同的队列时,系统会去数据库中查询该队列对应的最大核数和最大内存限制信息, 并将其显示在界面上,从而保证用户填写正确的参数值。[0〇77]云平台系统的任务提交:用户点击应用程序界面的submit按钮,BIG-Cloud中的应用程序提交模块首先会抽取用户在界面上填写的参数,接着调用中间件的新任务服务 NewTask,并传入刚才抽取的页面参数以及对应的值。NewTask服务被调用后,会将传递过来的参数值保存在XML文档中,并调用作业提交模块,对XML文档进行解析,生成作业提交命令并提交,同时向BIG-Cloud返回提交成功的jobID,否则返回error信息。BIG-Cloud接收到返回信息后,将会进行后面的处理。
[0078]集群上的任务运行监控:作业提交完成后,作业监控模块对作业的运行状态进行监控。该监控模块是一个线程,由BIG-Cloud中的机器管理模块启动。作业监控模块调用PBS 的作业查看命令查看提交的作业是否运行结束。如果运行结束,将会更新数据库中该作业的状态为完成。如果该作业为流程,则监控模块会触发任务提交模块提交下一个应用程序。 [〇〇79] BIG-Cloud任务状态查看和结果返回:在BIG-Cloud的web前端中内嵌了一个任务状态同步监控模块,该模块是一个常驻线程,随着BIG-Cloud的启动而启动。该模块定期扫描本地数据库中的作业状态,并调用作业日志服务TracelogService返回集群上的任务运行状态,并据此更新本地数据库中的作业状态。
[0080]当BIG-Cloud中的某个任务执行结束后,用户可以通过任务列表页面中的 “Results”链接触发数据列表服务,从而将集群上的结果目录结构同步到web界面中。当用户在线查看结果文件时,将触发DataService服务获取集群上对应位置下的文件内容,并将内容返回到前端。
[0081]BIG-Cloud采用轻量级的分布式系统架构,使得前端架构与高性能计算集群在物理上进行了隔离,两端的消息通讯采用中间件的方式,即实现了软件与硬件的无缝结合,也实现了软件与硬件独立运行,降低了耦合效应,提升系统的安全性和稳定性。BIG-Cloud开发了针对高性能集群的资源模块,可以在线配置集群目前的资源情况。开发的提交页面生成模块,能将资源情况参数内嵌到应用程序界面中,可以实现在提交任务时,按需选择资源参数。在运行作业时,集成的工作流引擎功能,可解析提交任务参数、监控任务状态,实现生物组学大数据远程利用资源的云计算数据处理模式。
【主权项】
1.一种面向生物组学大数据计算的云平台系统,其特征在于所述云平台系统包括系统 管理模块、数据管理模块、应用程序管理模块、流程管理模块、任务管理模块、数据可视化操 作模块以及用户与权限管理模块,所述系统管理模块用于实现云平台与高性能集群计算资 源的无缝桥接,并通过云平台对高性能集群计算资源进行动态管理与资源配置;所述数据 管理模块用于对上传的数据或结果数据进行分析,实现云平台对生物组学大数据的动态管 理;所述应用程序管理模块用于实现应用程序的可视化创建与动态管理;所述流程管理模 块用于实现用户按需定制流程;所述任务管理模块用于实现WEB化在线提交作业及任务运 行管理;所述数据可视化操作模块用于实现生物组学大数据的在线可视化管理与利用;所 述用户与权限管理模块用于实现系统用户、组以及对应权限的动态分配与管理。2.如权利要求1所述的面向生物组学大数据计算的云平台系统,其特征在于:在数据管 理模块中,根据数据的不同来源,划分四个不同的数据空间,即集群数据空间、私有数据空 间、共享数据空间和公共数据空间;集群数据空间用于用户从界面上加载用户在集群工作 目录上的数据,该空间数据用于查看或者提交计算任务;私有数据空间用于管理用户上传 的数据或者结果分析数据,支持数据查看、删除、目录创建、重命名操作;公共数据空间用于 存放系统整理好的公共物种数据,用于提交计算或者查看;共享数据空间用于存放用户共 享的数据,用户根据共享时指定的操作权限进行操作。3.如权利要求1所述的面向生物组学大数据计算的云平台系统,其特征在于:在应用程 序管理模块中用户根据界面提示信息填写输入、输出参数信息,提交应用程序脚本、测试数 据以及部署测试文档,应用程序在通过系统验证后,系统将自动为用户生成应用程序详细 表单,同时,在表单中植入高性能集群资源参数,创建好的应用程序可被修改、删除、共享给 他人或者发布。4.如权利要求3所述的面向生物组学大数据计算的云平台系统,其特征在于:应用程序 管理模块还用于通过XML文件导入的模式创建应用程序,XML文件用于根据程序实体对象生 成应用程序或者流程存储模型,并将模型数据转化成JSON数据格式,用于可视化显示以及 提交任务时的消息通讯实体。5.如权利要求1所述的面向生物组学大数据计算的云平台系统,其特征在于:所述任务 管理模块用于记录任务运行状态、提交参数、删除或者暂停执行任务;同时,该模块实现计 算任务的动态更新;该模块中计算任务状态更新的模块是一个常驻线程模块,随前端服务 的启动而启动,循环扫描当前还未结束的任务,并且调用中间件的作业状态服务获取集群 端中任务的执行状态,更新本地任务状态。6.如权利要求1所述的面向生物组学大数据计算的云平台系统,其特征在于:用户可对 6??、8£0、841〇18118基因组结果数据利用数据可视化操作模块进行数据的在线查看。7.如权利要求1所述的面向生物组学大数据计算的云平台系统,其特征在于,在所述云 平台系统的分布式架构的设计中,采用四类消息中间件服务实现服务之间的动态交互:1)任务提交服务,当用户从应用程序界面中提交任务时,将触发该服务在高性能计算 集群上提交一个新任务;2)数据服务,当用户上传文件或者在线查看与数据相关的操作时,将触发该服务,该服 务将实际操作高性能计算集群上对应的存储;3)作业日志服务,当用户查看任务状态将触发该服务,该服务能访问在高性能计算集群上运行的任务状态;4)集群资源服务,当用户查看集群资源时,将触发该服务,该服务能返回当前集群头结 点上的资源占用情况;在消息中间件中还加入了一个工作流引擎包,用于处理实际的任务提交、任务监控。8.如权利要求7所述的面向生物组学大数据计算的云平台系统,其特征在于,数据服务 中开发的服务有:文件上传服务:将用户本地文件上传到高性能集群对应的存储路径上;文件下载服务:将存储上的文件下载到本地;文件删除服务:删除存储上对应的文件;创建文件夹:在存储对应的路径下创建文件夹;列目录服务:列出对应存储路径下所有的内容。9.一种面向生物组学大数据的计算方法,其特征在于所述方法包括如下步骤:1)系统管理员在如权利要求1-8中任意一项所述的系统的系统管理模块中录入生物集 群资源信息并设置系统正常运行需要的信息;2)用户上传自己的数据文件到数据管理模块中的私有数据空间中;3)用户通过应用程序管理模块打开应用程序创建界面,根据界面提示信息配置应用程 序;4)管理员验证用户提交的应用程序,触发应用程序管理模块中的提交页面生成模块, 生成应用程序提交页面;5)用户打开应用程序提交界面,从私有数据空间中选择数据、设置计算参数,并选择结 果存放路径,提交计算任务;6)所述系统调用应用程序管理模块中的应用程序提交模块,解析用户填写的参数,并 触发消息中间件中的任务提交服务;7)任务提交服务触发工作流引擎的任务提交,提交计算任务到计算集群上,并返回任 务的Job ID给页面前端;8)用户在任务管理模块中查看任务状态;9)任务运行结束,用户点击任务列表中的链接获取计算结果。
【文档编号】H04L29/08GK106022007SQ201610413045
【公开日】2016年10月12日
【申请日】2016年6月14日
【发明人】唐碧霞, 赵文明, 朱军伟, 王彦青
【申请人】中国科学院北京基因组研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1