向和从云网络中存储和取回受限制的数据集和非受限制的数据集的制作方法

文档序号:17944025发布日期:2019-06-18 23:23阅读:218来源:国知局
向和从云网络中存储和取回受限制的数据集和非受限制的数据集的制作方法

本发明的实施例涉及向和从云网络中存储和取回受限制的数据集和非受限制的数据集。



背景技术:

存储控制器管理物理磁盘驱动器并将它们作为逻辑单元呈现给计算机。数据设施存储管理系统(datafacilitystoragemanagementsystem,dfsms)dss应用程序可以描述为dfsms功能组件或基本元素,用于复制、移动、转储和还原数据集和卷。(是internationalbusinessmachinescorporation在美国和/或其他国家/地区的商标。)

目前,为了减少每秒百万条指令(millionsofinstructionspersecond,mips),应用程序将数据集的存储和取回卸载到存储控制器。因此,需要额外逻辑(例如验证和重新阻止)处理的数据集受到限制,这意味着无法将这些数据集转储到云中。通常,在转储一组数据集时,应用程序拒绝某些数据集进行云处理可能会令人沮丧。从用户的角度来看,这种限制使得管理云备份变得更加复杂,因为支持/不支持的数据集无法在云中相互存储。转储可以被描述为特定格式的数据集的备份。与保留数据集的原始格式的复制/移动不同,在进行转储时,数据集将打包为包含与数据集相关的元数据和数据的格式。



技术实现要素:

提供了一种用于将受限制的数据集存储到云网络的云节点中的云存储器的计算机程序产品。该计算机程序产品包括计算机可读存储介质,所述计算机可读存储介质具有实现在其中的程序代码,该程序代码可由至少一个处理器执行以执行:接收将数据集从一个或多个存储设备转储到云存储器的请求,其中所述数据集包括受限制的数据集和非受限制的数据集,并且其中所述受限制的数据集采用云存储器不支持的格式;识别所述受限制的数据集;将所述受限制的数据集转换为云存储器支持的格式,以生成转换后的数据集;并将所述转换后的数据集和非受限制的数据集转储到云存储器中的一个容器中。

提供了一种用于将受限制的数据集存储到云网络的云节点中的云存储器的计算机系统。该计算机系统包括主机,该主机包括一个或多个处理器,一个或多个计算机可读存储器和一个或多个计算机可读的有形存储设备;存储在一个或多个计算机可读有形存储设备中的至少一个上的程序指令,用于由一个或多个处理器中的至少一个经由一个或多个存储器中的至少一个执行,以执行包括以下操作的操作:接收将数据集从一个或多个存储设备转储到云存储器的请求,其中数据集包括受限制的数据集和非受限制的数据集,并且其中受限制的数据集采用云存储器不支持的格式;识别受限制的数据集;将受限制的数据集转换为云存储器支持的格式,以生成转换后的数据集;并将转换后的数据集和非受限制的数据集转储到云存储器中的一个容器中。

提供了一种用于将受限制的数据集存储到云网络的云节点中的云存储器的方法。该方法包括:利用计算机的处理器接收将数据集从一个或多个存储设备转储到云存储器的请求,其中数据集包括受限制的数据集和非受限制的数据集,并且其中受限制的数据集采用云存储器不支持的格式;识别受限制的数据集;将受限制的数据集转换为云存储器支持的格式,以生成转换后的数据集;并将转换后的数据集和非受限制的数据集转储到云存储器中的一个容器中。

因此,实施例有利地将受限制和非受限制的数据集都存储到云存储器。

按照实施例,受限制的数据集被转换为具有顺序格式的平面文件。这种平面文件的优点在于它可以存储到云存储器中。

此外,在实施例中,转储请求包括具有cloud,container和objectprefix关键字的转储命令。

此外,在实施例中,一个容器包括用于云存储器的云文件系统中的文件夹。实施例有利地将非受限制的数据集和受限制的数据集(以转换形式)存储在云存储器中的一个文件夹中。

而且,响应于接收到从容器中恢复数据集的请求,实施例将非受限制的数据集直接从云存储器恢复到一个或多个存储设备。这种直接恢复有效地恢复了非受限制的数据集。

此外,响应于接收到从容器中恢复数据集的请求,实施例从云存储器恢复转换后的数据集到所述一个或多个存储设备和重新转换转换后的数据集,以产生在一个原始格式的受限制的数据集。这有利地以其原始格式提供数据集。

此外,在实施例中,恢复请求包括具有cloud,container和objectprefix关键字的恢复命令。

附图说明

现在,将仅通过示例并参考以下附图,来描述本发明的实施例,其中相同的附图标记始终表示相应的部分:

图1示出了根据某些实施例的云计算环境。

图2示出了根据某些实施例的抽象模型层。

图3以框图示出了根据某些实施例的计算环境。

图4示出了根据某些实施例的在转储命令或恢复命令中使用的cloud关键字语法。

图5示出了根据某些实施例的转储命令或恢复命令中使用的container关键字语法。

图6示出了根据某些实施例的转储命令或恢复命令中使用的objectprefix关键字语法。

图7示出了根据实施例的转储命令或恢复命令的关键字。

图8以流程图示出了根据某些实施例的用于将数据集从一个或多个存储设备转储到云存储器的操作。

图9以流程图示出了根据某些实施例的用于将数据集从云存储器恢复到一个或多个存储设备的操作。

图10示出了根据某些实施例的计算节点。

具体实施方式

已经出于说明的目的给出了对本发明的各种实施例的描述,但是并不旨在穷举或限制于所公开的实施例。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。这里使用的术语是为了最好地解释实施例的原理,实际应用或对市场中发现的技术的技术改进,或者使本领域普通技术人员能够理解本文公开的实施例。

首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案的实现却不限于云计算环境,而是能够结合现在已知或以后开发的任何其它类型的计算环境而实现。

云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。

特征包括:

按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。

广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理pda)对云的使用。

资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。

迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。

可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。

服务模型如下:

软件即服务(saas):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。

平台即服务(paas):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。

基础架构即服务(iaas):向消费者提供的能力是消费者能够在其中部署并运行包括操作系统和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作系统、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。

部署模型如下:

私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。

共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。

公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。

混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。

云计算环境是面向服务的,侧重于无状态,低耦合,模块化和语义互操作性。云计算的核心是包含互连节点网络的基础架构。

现在参考图1,其中显示了示例性的云计算环境50。如图所示,云计算环境50包括云计算消费者使用的本地计算设备可以与其相通信的一个或者多个云计算节点10,本地计算设备例如可以是个人数字助理(pda)或移动电话54a,台式电脑54b、笔记本电脑54c和/或汽车计算机系统54n。云计算节点10之间可以相互通信。可以在包括但不限于如上所述的私有云、共同体云、公共云或混合云或者它们的组合的一个或者多个网络中将云计算节点10进行物理或虚拟分组(图中未显示)。这样,云的消费者无需在本地计算设备上维护资源就能请求云计算环境50提供的基础架构即服务(iaas)、平台即服务(paas)和/或软件即服务(saas)。应当理解,图1显示的各类计算设备54a-n仅仅是示意性的,云计算节点10以及云计算环境50可以与任意类型网络上和/或网络可寻址连接的任意类型的计算设备(例如使用网络浏览器)通信。

现在参考图2,其中显示了云计算环境50(图1)提供的一组功能抽象层。首先应当理解,图2所示的组件、层以及功能都仅仅是示意性的,本发明的实施例不限于此。如图所示,提供下列层和对应功能:

硬件和软件层60包括硬件和软件组件。硬件组件的例子包括:主机61;基于risc(精简指令集计算机)体系结构的服务器62;服务器63;刀片服务器64;存储设备65;网络和网络组件66。软件组件的例子包括:网络应用服务器软件67以及数据库软件68。

虚拟层70提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器71、虚拟存储72、虚拟网络73(包括虚拟私有网络)、虚拟应用和操作系统74,以及虚拟客户端75。

在一个示例中,管理层80可以提供下述功能:资源供应功能81:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能82:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和发票。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能83:为消费者和系统管理员提供对云计算环境的访问。服务水平管理功能84:提供云计算资源的分配和管理,以满足必需的服务水平。服务水平协议(sla)计划和履行功能85:为根据sla预测的对云计算资源未来需求提供预先安排和供应。

工作负载层90提供云计算环境可能实现的功能的示例。在该层中,可提供的工作负载或功能的示例包括:地图绘制与导航91;软件开发及生命周期管理92;虚拟教室的教学提供93;数据分析处理94;交易处理95;以及与非受限制的数据集一起存储和取回受限制的数据集到和从云网络96。

因此,在某些实施例中,提供软件或程序为云环境中的服务,实现根据本文描述的实施例和非受限制的数据集一起向云网络存储和从云网络取回受限制的数据集。

图3以框图示出了根据某些实施例的计算环境。如图3所示,主机310耦合到存储控制器320,并且存储控制器320耦合到云网络340。云网络340可以以参考图1和图2描述的方式实现。主机310包括应用程序312,一个或多个存储设备314(例如,直接访问存储设备(directaccessstoragedevices,dasd))和数据管理应用程序318(例如,数据设施存储管理系统(datafacilitystoragemanagementsystem,dfsms)dss应用程序))。dasd314存储受限制和非受限制的数据集316。在实施例中,非受限制的数据集还可以被称为云支持的数据集,而受限制的数据集也可以被称为云不支持的数据集。非受限制的数据集采用云存储器支持的格式。

受限制的数据集的格式需要额外的逻辑处理,例如验证和重新阻止(re-blocking),这是将受限制的数据集存储到云存储器中所必需的。应用程序312将数据写入存储设备314。

所有类型的数据集都可能与云兼容。不兼容云的是具有需要大型机310进行额外处理以恢复数据集的属性的那些。

例如,以下属性将使数据集与云不兼容。

x'1'数据集驻留在特定类型的设备上(例如,可从国际商业机器公司获得的3380直接存取存储设备)。

x'2'数据集是一个多层虚拟存储访问方法(virtualstorageaccessmethod,vsam)数据集。

x'3'数据集是单条带多卷版本1类型。

x'4'源和目标之间的块大小不匹配。

x'5'数据集是具有键范围的vsam数据集。

x'6'数据集是具有嵌入索引的密钥序列数据集(key-sequenceddataset,ksds)。

x'7'数据集是vsam数据集,其中高使用的相对字节地址(relativebyteaddress,rba)等于高分配的相对字节地址(highallocatedrelativebyteaddress,harba)。

x'8'控制区域(controlarea,ca)/控制间隔(controlinterval,ci)大小在源和目标之间不匹配。

x'9'数据集是具有不兼容ca大小的vsam数据集。

x'a'数据集是集成的目录工具用户目录。

x'b'数据集是一个多卷扩展格式版本2顺序数据集,在除最后一个卷之外的卷上有文件结尾。

x'c'所述vsam数据集的ca大小小于15,由轨道分配,并且轨道数大于16,777,215。

dasd可以被描述为存储设备,其中每个物理记录具有离散位置和唯一地址。dasd包括,例如,磁盘驱动器、磁鼓、数据单元和光盘驱动器。存储控制器320包括数据集转储系统322,一个或多个转换后的转储数据集324,一个或多个非受限制的数据集326和中间存储器328。转换后的转储数据集324表示被转换为可能存储在云网络340中的格式的受限制的数据集。云网络340包括云节点342a……342n,其分别包括云存储器344a……344n。数据集转储系统322将数据集(受限制的和非受限制的)从存储设备314转储到云存储器344a……344n。

按照实施例,数据集转储系统322利用向/从存储设备功能转储/恢复,来为被拒绝用于云处理的受限制的数据集,创建转换后的转储数据集324。

sam代表顺序访问方法(sequentialaccessmethod)。sam转储数据集是一个平面文件。平面文件可以被描述为具有顺序格式且没有分层结构的数据集。在某些实施方案中,转换后的数据集是sam格式。在其他实施例中,转换后的转储数据集可以是其它格式。但是,转储通常以顺序格式写入,因为传统上转储被写入磁带,而磁带是按顺序访问的。

数据集转储系统322能够存储转换后的转储数据集324以及非受限制的数据集(即,支持向/来自存储设备功能转储/恢复的数据集)。实施例有利地在同一云容器的云中具有云支持和云不支持的数据集,而无需管理多个备份。实施例有利地聚合所有受限制的云不支持的数据集,并将它们放置在云支持的容器数据集中,并用其他云支持的数据集备份容器。为了将受限制的数据集放置在云存储器中,实施例向现有功能添加三个新关键字。在实施例中,关键字cloud,container和objectprefix被添加到现有dump命令和restore命令并应用于逻辑处理。在实施例中,在指定cloud关键字时指定container和objectprefix关键字。

图4示出了根据某些实施例的在转储命令或恢复命令中使用的cloud关键字语法400。cloud关键字是接受云构造名称作为输入的参数。云构造包含有关云的信息,例如云的名称和帐户/租户信息。存储管理员可以配置云构造,并且数据管理应用程序318将在转储和恢复数据集时使用构造内的信息。构造名称最多可以为30个字节。

按照实施例,数据管理应用程序318可以调用另一功能以获得存储类或管理类定义或者确定哪个存储组与特定存储设备(例如,dasd)卷相关联。

图5示出了根据某些实施例的转储命令或恢复命令中使用的container关键字语法500。container关键字是一个参数,用于指定存储对象的帐户下的位置。容器名称长度可以是128个字节,不能包含正斜杠。使用读写访问控制列表(acls)保护对容器内对象的访问。一旦授予对容器的访问权限,就会访问该容器中的所有对象。

图6示出了根据某些实施例的转储命令或恢复命令中使用的objectprefix关键字语法600。所述objectprefix关键字是指定前缀名称的参数,该数据管理应用程序318将其前置于对象的名称前,所述对象存储在容器下,指明对象存储的地点。对象名称的长度最多可达128个字节,以确保数据管理应用程序318不超过mcstore函数定义的限制。按照实施例,对象前缀不可超过44个字节。使用读写acl保护对容器内对象的访问。一旦授予对容器的访问权限,就会访问该容器中的所有对象。当将数据集存储到云存储器时,数据管理应用程序318创建三组对象。第一对象是包含数据集的属性的元数据对象(例如,数据集控制块(datasetcontrolblocks),非vsam卷记录(nvr)(non-vsamvolumerecord),vsam卷记录(vvr)(vsamvolumerecord)等)。第二个对象是数据对象。第三个对象是可以由应用程序传入的应用程序元数据对象。三个数据对象表示驻留在轨道上的数据,数据集驻留在存储设备(例如,dasd)的轨道之上。

按照实施例,源数据集所驻留的每个卷都将存在元和数据对象。这意味着如果转储的数据集驻留在3个卷上,则每个卷都将有元和数据对象。如果数据集是驻留在两个卷上的索引vsam数据集,则数据集将驻留在dasd上的每个组件都将有元和数据对象。为了简化支持,数据管理应用程序318可以为元数据创建更多的对象。

adrtapb是映射转储磁带或转储数据集记录的宏的名称,而dthdr,dtdshdr和dtsphere是在adrtapb宏中找到的子结构。dtttrk是一个子结构,它是adrtapb宏的一部分,有助于映射数据轨道。按照实施例,对象可以包括adrtapb记录,例如dthdr,dtdshdr,dtsphere等。对于与dtttrk记录类似的数据对象,这些对象可以包括范围区间,并且每个卷的每个数据集可能只有一个数据对象。

图7示出了根据实施例的转储命令或恢复命令的关键字700。例如,实施例使用的dump命令或restore命令包括关键字:cloud,container和objectprefix。其他关键字也可以在转储命令或恢复命令中使用。

在某些实施例中,新关键字cloudcredentials和debug是可用的。cloudcredentials关键字是个参数,它指定使用最多64个字符的证书,所述证书在使用云进行身份验证时使用。debug关键字是个参数。通过在转储或恢复命令中包括debugclmsg和子参数(minimal,summarized或detailed),可以将debug用作诊断工具。当指定clmsg子关键字时,数据管理应用程序318发出消息,该消息提供关于备份到云存储器的进度的细节。debug(clmsg)使用以下子关键字之一指定如下:

debugclmsg(minimal)-指定数据管理应用程序318不发布任何提供有关备份到云存储器的进度的详细信息的消息。

debugclmsg(summarized)-指定数据管理应用程序318将为存储到云存储器的每个对象发出信息消息。

debugclmsg(detailed)-指定数据管理应用程序318将提供关于对云存储器中的对象做出的每个超文本传输协议(http)请求的详细信息。

使用实施例,未指定debug(clmsg)时,minimal的处理是默认的。

图8以流程图描绘了根据某些实施例的用于将数据集从一个或多个存储设备转储到云存储器的操作。云存储位于云网络的云节点中。控制开始于框800,数据集转储系统122(从主机110的数据管理应用程序318)接收转储请求(从一个或多个存储设备到云存储器的指定数据集,其中指定的数据集包括受限制的数据集和非受限制的数据集)。转储请求可以是具有cloud,container和objectprefix关键字的转储命令,以及可选的cloudcredentials和/或debug关键字。在框802中,数据集转储系统122从指定的数据集中识别受限制的数据集。某些实施例,数据集转储系统122识别不能被转储到云的数据集列表并且使用typrun=norun对云执行dump。typrun=norun是数据管理应用程序318的功能的命令,其指示主机310运行模拟转储以获得数据集列表。在这种情况下,对于typrun=norun,数据管理应用程序318的功能提供了不能被转储到云的数据集列表。因此,typrun=norun可以被描述为筛选云存储器不支持的受限制的数据集的选项。然后,数据集转储系统122从一个或多个存储设备中提取所有数据集以形成新数据集,然后从新数据集中提取受限制的数据集。然后,新数据集包含非受限制的数据集,并且新数据集可以直接转储到云存储器并从云存储器中恢复。数据集转储系统122创建受限制的数据集的列表(其未能被转储到云存储器)。

在块804中,数据集转储系统122转换受限的数据集到云存储器支持的格式以产生转换后的数据集。在某些实施例中,数据集转储系统122将数据集(使用dump函数)从列表转储到一个或多个存储设备以创建顺序转储数据集,给其设定任意数据集名称(例如,cloud.dump)。dump函数将受限制的数据集转换为一个与云兼容的平面文件。

在框806中,数据集转储系统122将转换后的数据集和非受限制的数据集转储到云存储器中的一个容器。转储容器可以被描述为用于云存储器的云文件系统中的文件夹。也就是说,转储容器是云存储器的一部分。在某些实施例中,数据集转储系统122将,通过指定容器和对象前缀(objectprefix),连同非受限制的数据集一起,转储顺序转储数据集到云存储器。容器类似于文件夹,对象前缀(objectprefix)类似于文件名。容器和对象前缀(objectprefix)一起用于存储和定位(用于取回)转储。按照实施例,数据集名称列表与数据集一起存储在云存储器中。通过实施例,对于每个非受限制的数据集,数据集转储系统122在数据集名称列表云对象中创建条目。

图9以流程图描绘了根据某些实施例的用于将数据集从云存储器恢复到一个或多个存储设备的操作。控制开始于框900,数据集转储系统122(从主机110的数据管理应用程序318)接收从指定容器恢复指定数据集的请求。恢复请求可以是具有cloud,container和objectprefix关键字以及可选的cloudcredentials和/或debug关键字的回复命令。在某些实施例中,数据集转储系统122,为恢复,使用数据管理应用程序318来指定要恢复的数据集以及指定的对象前缀(objectprefix)和容器。

在框902,该数据集转储系统122直接从云存储器恢复指定数据集的非受限制的数据集到所述一个或多个存储设备。按照实施例,对于可被云转储的每个数据集(即,在数据集名称列表云对象中具有条目),数据集转储系统122直接恢复数据集。

在框904中,数据集转储系统122从云存储器恢复指定的数据集的转换后的数据集到一个或多个存储设备。按照实施例,对于不是云可转储的每个数据集,数据集转储系统122将用任意名称(例如,cloud.dump)恢复转储的顺序转储数据集从云存储器到一个或多个存储设备。在框906中,数据集转储系统122重新转换转换后的数据集以生成其原始格式的受限制的数据集。按照实施例,数据集转储系统122从顺序转储数据集执行dasdrestore以将顺序转储数据集返回到原始形式(即,到受限制的数据集)。

因此,在云数据存储中的实施例中,在执行向云的数据转储时,过滤掉云不支持的数据,并通过转储到中间存储328(在存储控制器320中)作为支持云的容器来聚合,并将容器转储到与云支持的数据相同的云存储器中。

实施例存储数据集并加入自描述元数据。此元数据包括存储的数据集列表,存储它们的存储设备,以及有关原始存储设备的信息。

实施例解决当数据管理应用程序318尝试将数据转储到云,并且源数据集的格式与云存储器不兼容。实施例过滤来自输入流的不兼容数据,将其封装在具有兼容云格式的数据的分组中,然后将兼容分组上载到云,注意保持分组中的信息以支持在需要时从云重新加载。

图10示出了根据某些实施例的计算环境1010。在某些实施例中,计算环境是云计算环境。如图10所示,计算机节点1012仅是合适的计算节点的一个示例,并且不旨在对本文描述的本发明的实施例的使用范围或功能提出任何限制。无论如何,计算机节点1012能够实现和/或执行上文阐述的任何功能。

计算机节点1012可以是一个计算机系统,它可与众多其它通用或专用计算系统环境或配置一起运行。可适用于计算机节点1012的众所周知的计算系统,环境和/或配置的示例包括但不限于个人计算机系统,服务器计算机系统,瘦客户端,胖客户端,手持设备或膝上型计算机设备,多处理器系统,基于微处理器的系统,机顶盒,可编程消费电子产品,网络pc,小型计算机系统,大型计算机系统和包括任何上述系统或设备等的分布式云计算环境。

计算机节点1012可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括执行特定的任务或者实现特定的抽象数据类型的例程、程序、目标程序、组件、逻辑、数据结构等。计算机节点1012可以在通过通信网络链接的远程处理设备执行任务的分布式云计算环境中实施。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。

在图10中,云计算节点1010中的计算机节点1012以通用计算设备的形式示出。计算机节点1012的组件可以包括但不限于一个或多个处理器或处理单元1016,系统存储器1028,以及总线1018,其将包括系统存储器1028的各种系统组件耦合到一个或多个处理器或处理单元1016。

总线1018表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。

计算机节点1012典型地包括多种计算机系统可读介质。这些介质可以是能够被计算机节点1012访问的任意可获得的介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器1028可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)1030和/或高速缓存存储器1032。计算机节点1012可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统1034可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线1018相连。系统存储器1028可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块1042的程序/实用工具1040,可以存储在系统存储器1028中,这样的程序模块1042包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块1042通常执行本发明所描述的实施例中的功能和/或方法。

计算机节点1012也可以与一个或多个外部设备1014(例如键盘、指向设备、显示器1024等)通信,还可与一个或者多个使得用户能与该计算机节点1012交互的设备通信,和/或与使得该计算机节点1012能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1022进行。并且,计算机系统/服务器1012还可以通过网络适配器1020与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器1020通过总线1018与计算机系统/服务器1012的其它模块通信。应当明白,尽管图中未示出,其它硬件和/或软件模块可以与计算机节点1012一起操作,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

在某些实施方案中,主机110,存储控制器120,和/或云计算节点10具有计算机节点1012的体系结构。

附加实施例细节

本发明可以是系统,方法和/或计算机程序产品。该计算机程序产品可以包括计算机可读存储介质(或介质),其上具有计算机可读程序指令,用于使处理器执行本发明的各方面。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。

这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1