当前位置: 首页 > 专利查询>凝聚力公司专利>正文

将数据高效地存储在云存储中制造技术

技术编号:37773363 阅读:12 留言:0更新日期:2023-06-06 13:39
在客户侧部件处接收要存储在云存储中的内容规范。内容的一部分划分为一个或多个批的数据区块。确定一个或多个批的数据区块的批大小是否满足阈值大小。基于批大小是否满足阈值大小的确定,可以将数据区块批直接或经由网络发送到云存储。发送到云存储。发送到云存储。

【技术实现步骤摘要】
【国外来华专利技术】将数据高效地存储在云存储中

技术介绍

[0001]数据管理服务可用于使实体(例如,企业、组织、政府、公司、用户、个人等)能够管理与所述实体相关联的数据。数据管理服务可允许实体使用由云服务提供商提供的一个或多个云服务,更特别地通过将数据从其数据中心复制到云存储来管理数据。数据可以直接复制到云存储,或者可以经由数据平面间接复制。此类复制可能导致云存储的使用效率低下。
附图说明
[0002]在下面的详细描述和附图中公开了本专利技术的各种实施方案。
[0003]图1是示出根据一些实施方案的用于将数据存储在云存储中的系统的框图。
[0004]图2是示出根据一些实施方案的用于将数据备份到云存储的过程的流程图。
[0005]图3是示出根据一些实施方案的用于确定将哪些数据区块备份到云存储的过程的流程图。
[0006]图4是示出根据一些实施方案的用于将数据区块写入到云存储的过程的流程图。
[0007]图5是示出根据一些实施方案的用于生成元数据的过程的流程图。
[0008]图6是示出根据一些实施方案的用于管理去重表的过程的流程图。
[0009]图7是示出根据一些实施方案的分布式系统(诸如图1的系统)内的数据交换的时序图。
[0010]图8是示出根据一些实施方案的分布式系统(诸如图1的系统)内的数据和元数据交换的时序图。
[0011]图9是示出根据一些实施方案的用于更新云存储元素对象的过程的流程图。
[0012]图10是示出根据一些实施方案的用于更新云存储元素对象的过程的流程图。
具体实施方式
[0013]本文公开了将数据高效地存储在远程存储诸如云存储中的技术。远程存储诸如云存储可包括来自实体的数据可以存储在其处但是对于所述实体来说其在不同的位置处的存储,并且因此可经由实体与云存储之间的网络进行访问。存储在云存储中的数据可由实体经由网络访问。远程存储的特性(诸如存储在其中的数据的数据可用性和数据持久性)在不同类型的远程存储之间可能不同。实体可出于多种不同原因中的一种或多种将数据存储在远程存储中,并且可以基于原因和相关联的特性来选择所使用的远程存储的类型。例如,可用性低但持久性高的远程存储可用于将数据归档达长时间段,因为不期望数据被重复地访问,但需要在数据被归档的时间段对其进行维护。在另一示例中,数据持久性较低但可用性较高的远程存储可以在实体可能期望频繁访问数据的情况下使用。一般来说,存储的特定特性之间可能存在折衷,并且这种折衷还可能包括快速完成存储数据的动作的需求。由远程存储的运营商收取的费用也可能是使用哪种类型的远程存储方面的一个因素。
[0014]在本地存储不可用或不足以满足实体的需求的情况下,将数据存储在远程存储中
是有用的。远程存储(诸如由例如Amazon Web Services(AWS)、Microsoft Azure或Google Cloud提供的云存储)使实体能够使用比以其他方式可获得的更多的存储量。实体可以具有分布式结构,使得实体的数据中心在不同位置处操作多个不同的源系统。然而,为了存储管理的效率性和便利性,实体可以利用与数据中心不同的位置处的或者比实体所运营的数据中心更少的数据中心处的远程存储。虽然远程存储可能具有比本地存储更大的容量,但仍然存在通过以下两方面高效地使用远程存储的需求:高效地使用远程存储处对实体可用的空间,以及高效地从数据中心提供数据。如果需要,则还存在确保以可以在稍后的日期高效地访问并使用数据的方式来存储数据的需求。
[0015]在本文公开的一些示例中,远程存储系统可以包括不同类型的远程存储。例如,远程存储系统可以包括第一远程存储和第二远程存储。第一远程存储可具有比第二远程存储更高的持久性。在使用云存储服务诸如AWS的情况下,第一远程存储可以呈云存储诸如S3存储的形式,并且第二远程存储可以由云服务器诸如EC2实例提供。云服务器还可以包括用于实现对待执行的数据的分析或整理的处理资源。例如,云服务器可以包括被配置为执行数据管理服务的一个或多个部件或引擎。云服务器可以在所谓的数据平面中操作。
[0016]贯穿以下描述使用对云存储和云服务器存储的引用。然而,以下关于云存储和云服务器存储描述的技术适用于包括至少两种类型的远程存储和处理能力的其他形式的远程存储系统。因此,以下对云存储的引用可以理解为对第一远程存储的引用,并且对云服务器存储的引用可以理解为对第二远程存储的引用。可包括云服务器和云服务器存储的数据平面可视为远程计算系统。应当理解,尽管下面的描述和附图将云存储和数据平面示出为同一系统的一部分,但是在其他示例中它们可以彼此远离。
[0017]一种将数据高效地存储在云存储中的技术包括:通过对存储在云存储中的与实体相关联的数据进行去重来减少与实体相关联并且存储在云存储中的数据量。云存储提供商可以为多个实体提供云存储。实体中的每个在本文中可以称为“存储租户”。
[0018]数据平面可被配置为执行一个或多个数据管理服务(例如,备份、分层、复制、迁移等)并控制与存储租户相关联的数据如何存储在云存储中。例如,数据平面可以包括:备份引擎,所述备份引擎被配置为确定与存储租户相关联的源系统要何时执行备份;分层引擎,所述分层引擎被配置为确定何时要从源系统将对象分层到云存储;和/或复制引擎,所述复制引擎被配置为确定何时要将数据内容从源系统复制到云存储。源系统可以为包括客户侧部件的数据中心的一部分。客户侧部件可以为虚拟机、容器、服务器、应用程序等。客户侧部件可被配置为经由双向网络连接(例如,gRPC(gRPC远程过程调用)连接)建立数据平面并与其安全地通信。数据平面可被配置为与多个客户侧部件通信。云存储还可被配置为从多个客户侧部件接收数据。客户侧部件可以分布在多个数据中心之间或者可以存在于一个数据中心中。客户侧部件可以对应于特定源系统。在一些示例中,数据中心可以包括多个客户侧部件,并且/或者存储租户可以具有多个数据中心,所述多个数据中心各自具有客户侧部件。内容规范可以由每个客户侧部件接收或确定。数据中心可以为分布式系统,其中数据中心的部件在不同的联网计算机上操作。这些部件可以通过网络(诸如本地网络)或更广泛的网络(诸如互联网)进行通信。在一些实施方案中,数据中心可以为集成系统,其中部件诸如源系统和客户侧部件在同一个计算机上操作。在一些实施方案中,数据中心可以为虚拟数据中心并且可以容纳在云存储中并在不同于向其执行备份的云存储的云服务器处操作。
[0019]客户侧部件可以从备份引擎接收要从源系统备份到云存储的内容规范。在一些实施方案中,内容规范描述源系统的完整备份。在一些实施方案中,内容规范描述源系统的增量备份。在一些实施方案中,内容规范描述包括在源系统中的对象(例如,虚拟机、容器、应用程序、存储集群)的完整备份。在一些实施方案中,内容规范描述包括在源系统中的对象的增量备份。在一些实施方案中,内容规范描述针对存储在源系统上的一个或多个对象(例如,一个或多个文件、一个或多个虚拟机、一个或多个容器、一个或多个应用程序、一个或多个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于将数据备份到远程存储的方法,所述方法包括:由客户侧部件生成一个或多个批的数据区块;由所述客户侧部件致使所述一个或多个批的数据区块存储在所述远程存储的一个或多个存储对象中,其中,具有小于阈值大小的大小的批经由独立于所述远程存储的远程计算系统从所述客户侧部件传输到所述远程存储,使得:具有大于或等于所述阈值大小的大小的批直接从所述客户侧部件传输到所述远程存储以供存储在所述一个或多个存储对象中的至少一个第一存储对象中,以及具有小于所述阈值大小的大小的批经由所述远程计算系统传输到所述远程存储以供存储在所述一个或多个存储对象中的至少一个第二存储对象中;以及从所述客户侧部件向所述远程计算系统传输所述至少一个第一存储对象的指示,其中,所述远程计算系统被配置为基于所述指示来更新树数据结构以引用所述至少一个第一存储对象并引用所述至少一个第二存储对象,并且将所述更新的树数据结构存储在所述远程存储处。2.根据权利要求1所述的方法,其包括:由所述客户侧部件从源系统接收数据;以及由所述客户侧部件将所述数据划分为多个数据区块,其中,所述一个或多个批是从所述多个数据区块生成的。3.根据权利要求2所述的方法,其包括:由所述客户侧部件识别来自所述多个数据区块的要存储在所述远程存储中的一个或多个数据区块,其中,所述一个或多个批是从所述一个或多个数据区块生成的。4.根据权利要求3所述的方法,其中,识别来自所述多个数据区块的要存储在所述远程存储中的所述一个或多个数据区块包括:由所述客户侧部件计算所述多个数据区块中的每个的对应的区块标识符;由所述客户侧部件向所述远程计算系统发送所述对应的区块标识符,其中,所述远程计算系统将所述对应的区块标识符与包括在去重表中的区块标识符进行比较;以及由所述客户侧部件从所述远程计算系统接收未包括在所述去重表中的一个或多个区块标识符的指示,所述一个或多个区块标识符对应于来自所述多个数据区块的要存储在所述远程存储中的所述一个或多个数据区块。5.根据权利要求2至4中任一项所述的方法,其包括:由所述客户侧部件将所述一个或多个批与所述阈值大小进行比较;对于其大小大于或等于所述阈值大小的批,将所述批直接传输到所述远程存储;以及对于其大小小于所述阈值大小的批,在致使所述一个或多个批存储在所述远程存储中之前:由所述客户侧部件确定自从所述源系统接收所述数据以来的时间段是否大于或等于阈值时间段;以及如果所述时间段大于或等于所述阈值时间段,则从所述客户侧部件向所述远程计算系统传输其大小小于所述阈值大小的所述批,或者如果所述时间段不大于或等于所述阈值时间段,则由所述客户侧部件基于从所述源系统接收的另外的数据来增加所述批的所述大小。
6.根据权利要求5所述的方法,其中,由所述客户侧部件增加所述批的所述大小包括:由所述客户侧部件从所述源系统接收另外的数据;由所述客户侧部件将所述另外的数据划分为第二多个数据区块;由所述客户侧部件识别所述第二多个数据区块中的要存储在所述远程存储中的一个或多个数据区块;以及由所述客户侧部件生成更新的一批数据区块,所述更新的一批数据区块包括所述第二多个数据区块中的一个或多个识别的数据区块以及其大小小于所述阈值大小且针对其的所述时间段不大于或等于所述阈值时间的所述数据区块。7.根据权利要求6所述的方法,其包括:由所述客户侧部件将所述更新的一批数据区块与所述阈值大小进行比较;以及如果所述更新的批的所述大小大于或等于所述阈值大小,则将所述更新的批直接传输到所述远程存储。8.根据前述权利要求中任一项所述的方法,其还包括:由所述客户侧部件接收加密密钥;以及在将具有大于或等于阈值大小的大小的所述批传输到所述远程存储之前,由所述客户侧部件使用所述加密密钥对所述批进行加密。9.根据前述权利要求中任一项所述的方法,其还包括:由所述客户侧部件从所述远程计算系统接收对应于所述至少一个第一存储对象的至少一个存储对象标识符;由所述客户侧部件将具有大于或等于阈值大小的大小的所述批传输到所述远程存储,以存储在与所述至少一个存储对象标识符相对应的所述至少一个第一存储对象中。10.根据权利要求9所述的方法,其中,所述至少一个第一存储对象包括存储在所述远程存储中的现有存储对象,并且其中,所述方法还包括:由所述客户侧部件读取所述至少一个第一存储对象以确定已经存储在其中的数据区块;以及由所述客户侧部件传输除了已经存储在所述至少一个第一存储对象中的所述数据区块之外的供存储在所述至少一个第一存储对象中的所述批。11.根据权利要求9或权利要求10所述的方法,...

【专利技术属性】
技术研发人员:阿努巴夫
申请(专利权)人:凝聚力公司
类型:发明
国别省市:

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

1