期刊专题 | 加入收藏 | 设为首页 12年实力经营,12年信誉保证!论文发表行业第一!就在400期刊网!

全国免费客服电话:
当前位置:首页 > 免费论文 > 科技论文 >

云计算环境下管理系统数据管理论文

1文件类型

科学工作流中的任务之间的依赖既包含控制依赖,也包含数据依赖。连接两个任务(t1-t2)的边表示任务t1的输出作为任务t2的输入,工作流中的每个任务可能读入一个或多个输入文件,然后写入一个或多个输出文件。在工作流层,文件可以分为3种类型:输入文件、中间文件和输出文件。不同类型的文件具有不同的生命周期。(1)输入文件。输入文件不由工作流中的任务产生,文件通常驻留在用户存储服务器上。在运行时,可以从一个存储服务器传送到另一个存储服务器,然后在这里被检索,也可以在存储服务器上直接检索。图1中的F-input就是一个输入文件[10]。(2)中间文件。在工作流运行过程中产生但无需长期保存的文件称为中间文件,将在所有使用它的任务结束后被立即删除。图1中的f-t1-o1、f-t1-o2、f-t2-o1、f-t2-o2都是中间文件。(3)输出文件,由工作流产生,对用户有用并且在工作流结束后需要永久保存的文件。在工作流执行过程中,这些文件通常被转移到常驻存储中。图1中的F-output就是工作流的输出文件。值得注意的是,输出文件不一定必须是工作流中最后任务的输出,也可能是中间环节任务的输出数据。

2云计算环境下工作流执行模型

科学工作流由工作流管理系统提交和管理,工作流管理系统驻留在提交主机,协调调度工作的流执行。工作流管理系统将工作流中的任务分配到虚拟机的工作节点,任务的执行所需要的数据可以从一个或多个输入数据存储点输入。中间文件在工作流执行期间驻留在数据暂存站点。当工作流结束时,工作流管理系统删除中间数据,同时将输出文件从暂存站点转存到输出站点,然后永久性保存。根据工作流管理系统和目标执行环境的不同,多个数据站点可以协同工作。例如,在输入数据已经驻留在计算节点的情况下,该计算节点和输入点是相同的。图2显示了具有两个任务的工作流,来说明工作流所需的文件是如何在逻辑上独立的站点之间移动的。

3对象存储应用于科学工作流中的数据管理

对象存储系统主要包括存储服务器、元数据服务器、客户端等组成部分,其核心思想是将数据的读和写与元数据存储分离,如图3所示。存储服务器主要负责数据存储、智能的数据分布以及每个对象元数据的管理;元数据服务器主要提供对象存储访问、文件和目录访问管理以及客户端缓存的一致性管理等功能。为了提供可扩展的可靠服务,对象存储器的内部结构非常复杂。例如,亚马逊的简单存储服务(S3)[12]通过REST(RepresentationalStateTransfer)、SOAP(SimpleObjectAccessProtocol)和APIs(ApplicationProgrammingInterfaces)提供检索和删除操作;它将一个对象的多个副本布局在存储服务器上以提供错误情况下的冗余。很多网格存储服务和为数据密集型应用设计的协议可以认为是对象存储,这种架构对构建来自不同的执行环境的数据管理模式而言具有重要的借鉴意义。针对面向大数据工作流,利用对象存储的优点,本文提出两个方案:一是工作流中的3类数据文件都使用远程的对象存储;二是在计算节点上使用共享文件系统作为数据暂存点来存储中间数据。

3.1单独使用对象存储

在这种情况下,所有的数据都存储在对象存储系统中,工作流管理系统需要从对象存储中无缝检索数据,为本地工作流任务使用。在这样的设置中,工作流管理系统从对象存储中检索输入文件和中间文件,然后,工作流中的任务对本地的POSIX文件系统做必要的输入/输出设置,任务完成时,工作流管理系统能够将中间数据和输出数据存储到对象存储中。这样,即使工作流被部署在分布的资源上,科学应用只需要对POSIX做常规的输入/输出设置,就能完成工作流的执行。工作流管理系统与对象存储的多次交互增加了工作流执行的开销,而该开销与分布资源上的计算相比并不算大。对象存储中既有输入数据也有中间数据,只要工作流系统与对象存储能够无缝检索和存储,那么任务执行可以在任何地方。如图4中,任务t1可以在校园计算机集群上完成,而属于同一工作流的任务t2可以在亚马逊的EC2上完成,t1、t2使用亚马逊的S3对象存储作为中间数据文件的暂存。总之,数据存储和执行环境的分离,使得工作流在分布资源上的执行更为容易。一个常见的情况是,当计算需求超过本地或校园计算所提供的资源时,将使用云资源。图4也说明了工作流的数据移动情况。在这里,文件F-i被传送到云中的高性能计算集群工作节点的本地文件系统。任务t1从该节点开始,读入输入文件F-i,然后写入本地文件系统的中间文件F-t,F-t被传回到作为数据暂存点的对象存储中。F-t文件将从对象存储中被检索进入到EC2节点的本地文件系统。任务t2启动后读取F-t文件(该文件是由t1创建),然后将F-o写到本地磁盘,再传送到对象存储中。以上所有的数据传输工作都由工作流管理系统完成。科学工作流中单独使用对象存储的明显不足之处是,数据重复传输会引起在大数据处理过程中的延迟。工作流中的多个任务使用相同的文件,所以重复传输是显而易见的[13][14]。对象存储将对同一资源的重复请求认为是不同的请求,对象存储通常以其良好的扩展性减轻这种重复对工作流性能造成的影响。另外,工作流系统可能在本地节点选择缓存文件,或者利用集群中的共享文件系统来减轻此问题。延迟是整个工作流性能应该关注的问题,云对象存储的设计提供了很高的带宽,但对单个检索或对象操作可能需要数秒钟的延迟。对具有大量文件的数据密集型的科学工作流而言,这种延迟显著增加了工作流运行的时间开销。大型工作流中的另一个问题是多数中间文件需要被传输到对象存储中由相关后续任务检索并使用。由于商业对象存储提供以GB为单位的存储,并按迁移、存储和检索的请求数付费,所以重复传输也就意味着费用的增加。

3.2共享文件系统作为数据暂存

解决由数据重复迁移造成的延迟问题的方法之一,是工作流管理系统将中间文件暂存在POSIX兼容系统中,由多个计算节点文件系统共享,然后在一个资源节点上运行所有的计算。文件共享系统保存了工作流管理系统中所有任务的中间数据,在这种情况下,只有输入输出文件存储在对象存储中。由于中间文件不需要在对象存储与计算节点之间传送,从而可降低使用商业云对象存储的费用。如图5所示,是一个具有文件共享系统的高性能计算环境下具有2个任务的简单工作流。文件F-i被工作流管理系统传送到集群文件共享文件系统。任务t1在计算节点1上启动,从共享文件系统中读入文件F-i,然后将中间文件F-i-t写入到共享文件系统中,任务t2在计算节点2上启动,从文件共享系统中读入F-i-t(由任务t1创建),然后将其输出写入到F-o,F-o由工作流管理系统送到对象存储中,这种方法的优点在传统的有高速并行超级计算环境中尤为显著。例如,XSEDE(ExtremeScienceandEngineeringDiscoveryEnvironment)节点对多数科学工作流点有极大扩展性[15]。值得注意的是,如果第一个计算节点忙而需要将计算溢出到另一个节点时,这种随数据布局任务的方法,损失了布局计算的灵活性。以上两种方法各有所长,选择使用哪种方法取决于工作流的类型和工作流执行的目标环境,这就要求工作流管理系统的开发具有弹性的数据管理方案,允许科学家有效使用对他们有用的基础设施。工作流中的数据管理方案应该具有如下特征:首先,科学工作流管理系统允许任务和数据后绑定,任务依据资源的可用性映射到计算资源上,任务在执行时能够发现资源,并从众多存储中选择数据暂存位置;其次,在科学家只有一个计算资源可用的情况下,允许任务和数据的静态绑定;再次,支持使用不同协议和不同安全机制访问对象存储。

4相关工作

工作流管理系统处理数据的方法很多,Swift[16]采用与本文所描述的第二种模式类似,使用本地文件系统或共享文件系统作为数据缓存,提交主机扮演数据暂存的角色。系统首先选择一个计算站点来运行一个任务,然后将数据从提交主机推向该站点的文件系统,任务执行后,输入的文件被回传给提交主机,中间文件被留在共享文件系统中以便后续任务的执行。相对而言,本文将数据文件(包括输入、输出、中间文件)与提交主机分离,并使用不同的协议,具有更好的灵活性。其他工作流管理系统如Kepler[17],Triana[18]和Taverna[19]关注的是流式工作流中任务的调度和其他Web资源的调用,这些工作流具有图形化的用户界面,允许用户搭建具有不同部件的工作流,但通常没有涉及访问大量数据集的问题。这些工作流中的数据管理很大程度上依赖于用户,数据管理自动化非常有限。Kepler[20]引入了一个MapReduce执行器,允许执行采用MapReduce算法的混合工作流。Hadoop平台通常用来运行数据密集型的科学应用,它所提供的文件操作与POSIX类似,允许随机读,但不允许随机写。在这种情况下,Hadoop平台负责将输入文件切片并分布在各个数据节点。而本文提出的方法主要针对工作流运行在多个不同的执行环境中,代码不能MapReduce的情况。在XSEDE中,任务利用分布式文件系统如GPFS-WAN[21](GeneralParallelFileSystem-WAN)来访问数据,分布式文件系统支持POSIX操作,可以对输入和输出文件进行远程访问。研究表明[22],将大型数据集布局在本地计算节点会更好,但这一策略也会带来新的问题,如不同类型工作流的融合以及数据布局策略算法等。

5总结

本文描述了在大数据处理中,科学工作流管理系统是如何利用对象存储来存储大量的、数据密集型的工作流的。本文构建了在云计算环境下科学工作流的执行模型,基于对象存储,提出了两种科学工作流中数据管理方案,一是单独使用对象存储来存储工作流运行期间所产生和访问的所有文件,另一种是依赖于共享文件系统来缓存中间数据集。本文提出的方法是中间数据暂存点与计算点分离,从远程的对象存储中为任务检索数据,然而在云环境下非常普遍的情况是本地节点就有可用数据,因为数据总会在不同的节点存储副本,这就要求工作流管理系统能够在进行远程对象存储检索之前发现本地节点的文件,这给数据管理带来灵活性的同时,也对科学工作流中的数据布局算法等方面提出了新的挑战。笔者将在后续工作中进一步研究云计算环境下数据分布对数据管理的影响。

作者:魏银珍 邓仲华


    更多科技论文论文详细信息: 云计算环境下管理系统数据管理论文
    http://www.400qikan.com/mflunwen/kjlw/82881.html

    相关专题:新农村住宅设计图 安妮宝贝


    上一篇:院士分布对高等教育的影响
    下一篇:自动化专业电气控制论文

    认准400期刊网 可信 保障 安全 快速 客户见证 退款保证


    品牌介绍