用于优化对象版本控制的无服务器解决方案制造技术

技术编号:28850344 阅读:19 留言:0更新日期:2021-06-11 23:55
一个示例性方法包括:通过执行包括从客户端应用接收应用程序接口(API)网关调用、并利用API网关调用自动触发对象插入函数的执行的操作而在数据中心处实现函数即服务(FaaS),其中API网关调用与对象PUT请求相关联。对象插入函数包括从后端对象存储器中检索对象的先前版本,相对于对象的先前版本差异地压缩对象以产生差异,以及将差异存储在后端对象存储器中。

【技术实现步骤摘要】
【国外来华专利技术】用于优化对象版本控制的无服务器解决方案
本专利技术的实施方式大体上涉及数据保护和可用性。更具体地,本专利技术的至少一些实施方式涉及用于优化对象版本控制以帮助减少对象消耗的存储量的系统、硬件、软件、计算机可读介质以及方法。
技术介绍
企业生成大量重要数据,所述数据通常保存在某种类型的数据保护环境中。典型的数据保护环境采用各种硬件和软件,以提供数据安全性、访问性和可用性。例如,对象存储目前广泛用于公共云中以及企业或其他实体本地。这些公共云存储环境的实例包括AmazonS3和DellEMC弹性云存储(ElasticCloudStorage,ECS)。云存储环境采用的许多对象存储器都支持对象版本控制,因此允许用户为了数据保护和数据管理而保留对象的先前版本。但是,这种灵活性和能力是有代价的。也就是说,即使同一对象的不同版本通常彼此非常相似,用户也必须为该对象的每个完整版本消耗的存储容量付费。因此,用户在为可能不需要的存储容量付费。更详细地,同一对象的各个版本往往相似。例如,在演示文稿和Word文档的情况下,文件的每个版本通常仅稍微更改对象。另一示例是对象的备份副本。备份定期进行(例如每天一次),并且每天产生的副本通常彼此之间的差异不大,甚至可能没有差异。使用当前的版本创建方法,向客户收费的存储器由每个版本的完整副本组成,这是不必要地昂贵的。也就是说,对象版本的定价仅基于对象的大小,而不是基于对象的任何更改的大小或程度,使得,即使仅对对象进行很小的更改,存储修改后的版本的花费与存储对象的先前版本的成本相同。因此,例如,将具有多个版本的对象存储在云中的成本可以比将对象本地存储在支持重复数据删除的存储器中的成本高得多。附图说明为了描述可以获得本专利技术的至少一些优点和特征的方式,将参考在附图中示出的本专利技术的特定实施方式来更具体的描述本专利技术的实施方式。应理解,这些附图仅描绘了本专利技术的典型实施方式,并且因此不应被认为是对本专利技术的范围的限制,将通过使用附图用附加的特征和细节来描述和解释本专利技术的实施方式。图1公开了针对本专利技术的一些实施方式的示例性操作环境的方面。图2公开了示例性主机配置的方面。图3是公开了FaaS的结构和操作的一些一般方面的图。图4是公开了涉及对象版本控制的FaaS的结构和操作的一些方面的图。图5是公开了用于将对象插入实现为FaaS的方法的方面的流程图。图6是公开了用于将对象读取实现为FaaS的方法的方面的流程图。图7是公开了用于将对象删除实现为FaaS的方法的方面的流程图。具体实施方式本专利技术的实施方式大体上涉及数据保护和可用性。更具体地,本专利技术的至少一些实施方式涉及用于优化对象版本控制以帮助减少对象消耗的存储量的系统、硬件、软件、计算机可读介质以及方法。一般而言,本专利技术的示例性实施方式包括针对对象版本控制服务的函数即服务(FunctionasaService,FaaS)方法,其将允许对象的多个版本紧凑化,并且由于客户端的对象所需的存储量减少而允许可能地显著节省成本。如本文所使用的,FaaS包括但不限于云计算服务类别,其提供允许客户开发、运行和管理应用功能的平台,而无需复杂地构建和维护通常与开发和启动app(应用)相关联的基础设施。本专利技术范围内的实施方式包括FaaS,其可以利用公共云支持的现有版本控制,但是可以以紧凑得多的格式将数据存储在公共云中。简而言之,使用应用程序接口(API)网关创建对象存储前端,其将成为FaaS服务的入口点。API前端将公开支持对象版本控制的对象存储API。当启用API前端中的函数时,将调用FaaS。该函数通过将调用转发到后端对象存储器来实现API,例如放置/获取/删除(PUT/GET/DELETE)对象。于是有利地,相对于常规硬件、系统和方法,本专利技术的实施方式可以提供各种益处和改进。为了说明,本专利技术的实施方式可以通过提高存储数据的效率来改进计算系统或计算系统的元件的操作。并且,本专利技术的实施方式通过增加可用于数据存储的空间量来改进计算系统的操作。作为最后的示例,本专利技术的实施方式通过减少需要存储的数据的量来改进计算系统的操作。根据本申请,本专利技术的示例性实施方式的各种其他有利方面将是明显的。此外,FaaS实现的至少一些示例性实施方式不需要外部数据库。因此,定价主要基于函数的调用,而不是基于存储成本。因此,就所使用的存储量而言,可以实现显著的成本节省。A.示例性操作环境的方面以下是对本专利技术的各种实施方式的示例性操作环境的方面的讨论。该讨论不旨在以任何方式限制本专利技术的范围或实施方式的适用性。在执行数据保护操作(例如备份和/或恢复操作)的情况下,至少一些实施方式可以结合能够实现备份、存档、恢复和/或灾难复原功能的数据保护环境来使用。然而,本专利技术的范围不限于该示例性数据保护环境,而是更一般地扩展到与创建、保存、备份和/或恢复数据有关的任何数据保护环境。更一般地,本专利技术的范围包括所公开的概念在其中可以有用的任何操作环境。例如,本专利技术的实施方式可以与数据备份和恢复平台(例如Dell-EMCNetWorker和Avamar平台)结合使用。数据保护环境可以采取公共云存储环境或私有云存储环境、本地存储环境以及包括公共和私有元素的混合存储环境的形式,然而本专利技术的范围也扩展到任何其他类型的数据保护环境。这些示例性存储环境中的任一者都可以部分或完全地虚拟化。该存储环境可以包括数据中心或由数据中心组成,该数据中心是可操作的以服务由一个或多个客户端发起的读取和写入操作。除了存储环境之外,操作环境还可以包括一个或多个主机设备(例如客户端),每个主机设备主管一个或多个应用。如此,特定客户端可以使用一个或多个应用中的每个应用的一个或多个实例,或者以其他方式与该一个或多个应用中的每个应用的一个或多个实例相关联。通常,客户端使用的应用不限于任何特定功能或功能类型。例如,一些示例性应用和数据包括电子邮件应用(例如MSExchange)、文件系统以及数据库(例如Oracle数据库和SQLServer数据库)。客户端上的应用可生成期望被保护的新数据和/或经修改的数据。根据本专利技术的各种实施方式,本文公开的任何设备或实体可以由一个或多个数据保护策略来保护。可以通过根据本专利技术的实施方式的数据保护策略来保护的设备的其他示例包括但不限于容器和VM。操作环境中的任何设备(包括客户端、服务器和主机)都可以采用软件、物理机或虚拟机(VM)的形式、或这些形式的任意组合,然而任何实施方式均不需要特定的设备实现或配置。类似地,数据保护系统组件(例如数据库、存储服务器、存储卷(LUN)、存储磁盘、复制服务、备份服务器、恢复服务器、备份客户端和恢复客户端)例如同样可以采用软件、物理机或虚拟机(VM)的形式,然而任何实施方式均不需要特定的组件实现。在使用VM的情况下,可以使用管理程序或其他虚拟机监视器(VMM)来创建和控制VM。如本文所使用的,术语“数据”旨在在范围上是广泛的。因此,该术语通过示例而非本文档来自技高网...

【技术保护点】
1.一种方法,包括:/n通过执行包括以下的操作,在数据中心处实现函数即服务(FaaS):/n从客户端应用接收应用程序接口(API)网关调用,其中,所述API网关调用与对象放置请求相关联;以及/n利用所述API网关调用,自动触发对象插入函数的执行,所述对象插入函数包括:/n从后端对象存储器中检索对象的先前版本;/n相对于所述对象的先前版本,差异地压缩所述对象,以产生差异;以及/n将所述差异存储在所述后端对象存储器中。/n

【技术特征摘要】
【国外来华专利技术】20181026 US 16/172,3371.一种方法,包括:
通过执行包括以下的操作,在数据中心处实现函数即服务(FaaS):
从客户端应用接收应用程序接口(API)网关调用,其中,所述API网关调用与对象放置请求相关联;以及
利用所述API网关调用,自动触发对象插入函数的执行,所述对象插入函数包括:
从后端对象存储器中检索对象的先前版本;
相对于所述对象的先前版本,差异地压缩所述对象,以产生差异;以及
将所述差异存储在所述后端对象存储器中。


2.根据权利要求1所述的方法,还包括:接收与对象获取请求相关联的API网关调用,并利用与所述对象获取请求相关联的所述API网关调用,自动触发对象读取函数的执行,所述对象读取函数包括:
从所述后端对象存储器中检索所述获取请求中标识的对象版本,以及当所述对象版本是差异时,还从所述后端对象存储器中检索所述对象版本的先前完整副本以及在创建所述先前完整副本后创建的任何差异;
当所述对象版本是差异时,使用所述先前完整副本和所述任何差异来重建所述对象版本;以及
返回所述对象版本。


3.根据权利要求1所述的方法,其中,所述差异的大小比所述对象和所述对象的先前版本两者都小。


4.根据权利要求1所述的方法,其中,当所述差异的大小超过定义的阈值时,不存储所述差异。


5.根据权利要求1所述的方法,还包括在差异地压缩所述对象之前将所述对象解压缩。


6.根据权利要求6所述的方法,其中,所述对象是文件。


7.根据权利要求1所述的方法,还包括接收与对象删除请求相关联的API网关调用,并利用与所述对象删除请求相关联的所述API网关调用,自动触发对象删除函数的执行,所述对象删除函数包括:
当在所述删除请求中标识的对象版本不是基础对象时,从所述后端对象存储器中删除在所述删除请求中标识的所述对象版本;
当所述对象版本是一个或多个差异对象版本所从属的基础对象时,将所述对象版本标记为被删除,并删除相应的差异对象版本;以及
当删除所述基础对象的所有从属副本后,删除所述基础对象。


8.根据权利要求1所述的方法,其中,所述操作还包括将所述API网关调用转发到所述后端对象存储器。


9.根据权利要求1所述的方法,还包括提供检索过程、差异压缩过程和差异存储过程中的任一者或多者。


10.一种非暂时性存储介质,所述非暂时性存储介质具有存储在其中的计算机可执行指令,所述计算机可执行指令在由一个或多个硬件处理器执行时,执行以下:
通过执行包括以下的操作,在数据中心处实现函数即服务(FaaS):
从客...

【专利技术属性】
技术研发人员:A·纳塔佐恩Y·萨阿德
申请(专利权)人:EMCIP控股有限公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1