数据系统中的接收器侧数据重复删除技术方案

技术编号:16080073 阅读:21 留言:0更新日期:2017-08-25 15:32
本申请涉及数据系统中的接收器侧数据重复删除。更具体而言,提供用于在接收器处接收来自发送器的上载数据的方法和装置。描述了可减少在从发送器向接收器上载数据时使用的带宽的数据重复删除技术。在该技术中,接收器而不是发送器维持用于先前上载的数据的指纹字典。当发送器具有要被上载的附加的数据时,发送器提取用于数据单位的指纹并将指纹发送给接收器。接收器检查其指纹字典,以确定要被上载的数据单位并且向发送器通知标识的单位,该发送器然后将标识的数据单位发送给接收器。该技术可例如被应用于虚拟化数据存储系统,以减少在上载数据时使用的带宽。

【技术实现步骤摘要】
数据系统中的接收器侧数据重复删除本申请是申请日为2011年12月21日、专利技术名称为“数据系统中的接收器侧数据重复删除”的中国专利申请201180063651.X的分案申请。
技术介绍
在许多数据系统中,广义上说,发送器(数据源)通过通信信道将数据上载到接收器(数据处理器)。这种系统的例子是数据存储系统;但是,这些数据系统可包含接收器以某种方式处理从发送器上载的数据的任何系统。上载和处理的数据可包含但不限于任何类型的文本、图形或图像数据、音频数据(例如,音乐和声音数据)、视频数据和压缩和/或加密数据等。在许多这种系统中,可能需要通过通信信道从发送器向接收器上载大量的数据。但是,通信信道一般具有宽带限制,而这种数据系统的目标是,得到跨通信信道到接收器的尽可能多的可用数据。数据重复删除指的是用于减少或消除这种系统中的冗余数据,以例如提高数据存储系统中的存储利用并且/或者减少通信信道上的带宽使用的技术。作为例子,在应用于数据存储系统的至少一些数据重复删除技术中,可以防止复制数据存储到数据存储。为了实现这一点,已驻留于数据存储中的数据的单位和/或没有驻留于数据存储中的数据的单位可被标识,并且,只有没有驻留于数据存储中的单位在数据存储中被存储或者被更新。本申请中的数据重复删除可由此减少需要的存储容量,原因是数据的特定的单位的更少或者仅仅一个副本被保持。一种用于数据系统中的数据重复删除的技术是使发送器在接收器处上载要被处理(例如,存储于数据存储系统中)的所有数据,并且使接收器标识要被处理的数据的单位。但是,该技术不减少发送器与接收器之间的带宽使用。可减少带宽使用的数据重复删除的常规技术是使发送器标识要被上载到接收器的数据的单位;只有标识的数据的单位从发送器被上载到接收器。图1示出发送器(数据源)标识数据的单位并将其上载到接收器(例如,数据存储系统)的常规的重复删除技术。在该常规的重复删除技术中,发送器20维持数据22和本地存储的指纹24。本地存储的指纹24可唯一地标识已被上载到数据存储12的数据22的单位。指纹24可例如是数据22的单位的散列。在基于块的数据系统(例如,块存储系统)中,数据的单位可以例如为数据块的256k字节部分、数据块的1024k字节部分或数据块的一些其它的固定或可变尺寸部分。在基于文件的系统中,数据的单位可以是文件或文件的与基于块的数据系统中的部分类似的部分。当发送器20具有要被上载到接收器10的数据22时,发送器20处的数据上载管理器26可提取要被上载的数据22的单位的指纹,并将提取的指纹与本地存储指纹24相比较,以标识没有被上载到接收器10(或者以前被上载但已在本地被修改)的数据的一个或更多个单位。数据上载管理器26然后可将标识的数据单位上载到接收器10,该接收器10例如通过将数据单位存储到数据存储而处理12数据单位。虽然该技术可减少在从发送器20向接收器10上载数据时使用的带宽,但是,该技术要求发送器20维持指纹24的字典。在许多这种系统中,在本地维持于发送器20处的数据22的本地存储或高速缓存可包含数以千兆字节或兆兆字节计数的数据。因此,可由发送器20维持的指纹24的字典会相当大。另外,在一些系统中,接收器10可为多个发送器20服务,并且,在这些系统中,难以在全局上应用重复删除(例如,以对于两个或更多个数据源跨由接收器10存储的数据一致地应用重复删除)。附图说明图1示出发送器(数据源)标识数据的单位并将其上载到接收器(例如,数据存储系统)的常规的重复删除技术。图2A~2D是示出根据至少一些实施例的在包含发送器(数据源)和接收器(数据存储系统)的数据系统中实现的数据重复删除技术的框图。图3A是根据至少一些实施例的虚拟化数据存储系统的高级框图。图3B是根据至少一些实施例的包含用作虚拟化数据存储顾客和虚拟化数据存储服务之间的接口的虚拟化数据存储顾客站点处的虚拟化数据存储网关的虚拟化数据存储系统的框图。图3C是根据至少一些实施例的向虚拟化服务提供者的顾客提供虚拟化数据存储服务和硬件虚拟化服务的虚拟化服务的框图。图4A~4F是示出根据至少一些实施例的在包含虚拟化数据存储顾客处的虚拟化数据存储网关的虚拟化数据存储系统中实现的数据重复删除技术的框图。图5是根据至少一些实施例的用于初始化虚拟化数据存储网关的方法的流程图。图6是根据至少一些实施例的在包含虚拟化数据存储网关的虚拟化数据存储系统中实现的数据重复删除技术的流程图。图7是示出可在一些实施例中使用的示例计算机系统的框图。虽然这里作为例子对于几个实施例和示出的附图描述实施例,但本领域技术人员可以理解,实施例不限于描述的实施例或附图。应当注意,附图及其详细的描述不是要将实施例限于公开的特定的形式,相反,是要覆盖落入由所附的权利要求限定的精神和范围内的所有修改、等同和替代方案。这里使用的标题仅是出于组织的目的,而不意味着用于限制说明书或权利要求的范围。如在本申请中使用的那样,以允许的意义(即,意味着具有可能性)而不是强制的意义(即,意味着必须)使用词语“可以”。类似地,词语“包含”、“包括”和“含有”意味着包括但不限于。具体实施方式描述了用于接收器侧数据重复删除的方法和装置的各种实施例。描述了可例如被应用于虚拟化数据存储系统以在与常规的数据重复删除技术相比时减少发送器与接收器之间的通信信道上的带宽使用的数据重复删除技术的实施例。在数据重复删除技术的实施例中,不是发送器维持指纹字典并确定要被载到接收器的数据单位,而是接收器维持指纹字典。当发送器具有要被上载的数据时,发送器提取用于数据的指纹并将指纹发送给接收器。接收器检查其指纹字典以确定要被上载到接收器的数据单位并且通知发送器,该发送器然后将标识的数据的单位发送给接收器。由于只有不存在于数据存储中的单位被上载,因此,数据重复删除技术的实施例由此减少在从发送器向接收器上载数据时使用的带宽。另外,实施例不需要发送器维持大的指纹字典并使数据重复删除集中于接收器处,由此允许跨对于多个数据源存储的数据应用数据重复删除。可进行这样一种小的权衡,即,由于该技术需要发送器与接收器之间的通信的额外的轮次,因此,上载处理中的延时会增加;但是,延时一般不是上载处理中的主要问题。虽然在这里一般在数据存储系统应用中描述数据重复删除技术的实施例,但是,数据重复删除技术可被应用于接收器接收从发送器上载的数据的任何系统。上载和处理的数据可包含但不限于任何类型的文本、图形或图像数据、音频数据(例如,音乐和声音数据)、视频数据和压缩和/或加密数据等。另外,虽然在这里一般关于远程定位并通过诸如因特网的有线和/或无线网络通信的发送器和接收器描述实施例,但是,也可在发送器和接收器是例如通过有线或无线局域网络或直接链接通信的局域装置的应用以及发送器和接收器是通过诸如数据总线的内部通信信道、直接数据链接、共享存储器传送或无线通信信道通信的单个装置或系统内的硬件和/或软件部件的应用中应用数据重复删除技术。图2A~2D是示出根据至少一些实施例的在包含发送器(数据源)和接收器(例如,数据存储系统)的数据系统中实现的数据重复删除技术的框图。参照图2A,接收器110可根据数据处理112技术或功能处理数据。例如,接收器110可在数据存储中存储数据。图2本文档来自技高网...
数据系统中的接收器侧数据重复删除

【技术保护点】
一种用于数据重复删除的系统,包括:至少一个处理器;和包含程序指令的存储器,其中,所述程序指令可由所述至少一个处理器执行以实现数据存储服务,所述数据存储服务被配置为:将指纹存储到指纹字典,其中,所述指纹字典中的每个指纹唯一地标识存储在所述数据存储服务处的相应的数据单位;通过网络从网关装置接收与数据卷的相应的数据单位对应的至少一个指纹,其中,所述网关装置位于远离所述数据存储服务的客户机站点处,并且其中,所述数据卷是由所述客户机站点处的客户机装置在所述网关装置上生成或者修改的;针对所述至少一个指纹搜索所述指纹字典,以确定所述指纹是否处于所述指纹字典中,其中,确定所述指纹不处于所述指纹字典中指示对应的数据单位要被上载;通过所述网络向所述网关装置发送通过所述搜索确定的要被上载的一个或更多个数据单位的指示;以及通过所述网络从所述网关装置接收所指示的一个或更多个数据单位以存储在所述数据存储服务处。

【技术特征摘要】
2010.12.29 US 12/981,393;2010.12.29 US 12/981,3971.一种用于数据重复删除的系统,包括:至少一个处理器;和包含程序指令的存储器,其中,所述程序指令可由所述至少一个处理器执行以实现数据存储服务,所述数据存储服务被配置为:将指纹存储到指纹字典,其中,所述指纹字典中的每个指纹唯一地标识存储在所述数据存储服务处的相应的数据单位;通过网络从网关装置接收与数据卷的相应的数据单位对应的至少一个指纹,其中,所述网关装置位于远离所述数据存储服务的客户机站点处,并且其中,所述数据卷是由所述客户机站点处的客户机装置在所述网关装置上生成或者修改的;针对所述至少一个指纹搜索所述指纹字典,以确定所述指纹是否处于所述指纹字典中,其中,确定所述指纹不处于所述指纹字典中指示对应的数据单位要被上载;通过所述网络向所述网关装置发送通过所述搜索确定的要被上载的一个或更多个数据单位的指示;以及通过所述网络从所述网关装置接收所指示的一个或更多个数据单位以存储在所述数据存储服务处。2.如权利要求1所述的系统,其中,每个指纹是相应的数据单位的散列。3.如权利要求2所述的系统,其中,所述散列是根据应用于所述相应的数据单位的加密性强的单向散列函数产生的。4.如权利要求1所述的系统,其中,所述数据存储服务还配置为用与从所述网关装置接收并存储到所述数据存储服务的每个数据单位对应的指纹来更新所述指纹字典。5.如权利要求1所述的系统,其中,所述数据作为数据块存储在数据存储服务处,其中,每个数据块包含两个或更多个数据单位。6.如权利要求1所述的系统,其中,所述程序指令可由所述至少一个处理器执行,以通过所述网络将所述数据存储服务作为虚拟化数据存储向多个顾客提供,其中,存储在所述数据存储中的数据包含用于所述多个顾客中的每一个的顾客数据,其中所述网关装置与所述多...

【专利技术属性】
技术研发人员:J·C·索伦森三世
申请(专利权)人:亚马逊科技公司
类型:发明
国别省市:美国,US

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

1