The present invention provides methods and apparatus for receiving upload data from a transmitter at a receiver. A data deduplication technique that reduces the bandwidth used to upload data from a transmitter to a receiver is described. In this technique, the receiver, rather than the transmitter, maintains a fingerprint dictionary for data previously uploaded. When the transmitter has additional data to be uploaded, the transmitter extracts the fingerprint used for the data unit and sends the fingerprint to the receiver. The receiver checks its fingerprint dictionary to determine the unit of data to be uploaded and informs the sender of the identity unit, which then sends the identified data unit to the receiver. The technology can be applied, for example, to virtualized data storage systems to reduce the bandwidth used to upload data.
【技术实现步骤摘要】
【国外来华专利技术】数据系统中的接收器侧数据重复删除
本申请涉及数据处理,并且更具体而言涉及数据重复删除。
技术介绍
在许多数据系统中,广义上说,发送器(数据源)通过通信信道将数据上载到接收器(数据处理器)。这种系统的例子是数据存储系统;但是,这些数据系统可包含接收器以某种方式处理从发送器上载的数据的任何系统。上载和处理的数据可包含但不限于任何类型的文本、图形或图像数据、音频数据(例如,音乐和声音数据)、视频数据和压缩和/或加密数据等。在许多这种系统中,可能需要通过通信信道从发送器向接收器上载大量的数据。但是,通信信道一般具有宽带限制,而这种数据系统的目标是,得到跨通信信道到接收器的尽可能多的可用数据。数据重复删除指的是用于减少或消除这种系统中的冗余数据,以例如提高数据存储系统中的存储利用并且/或者减少通信信道上的带宽使用的技术。作为例子,在应用于数据存储系统的至少一些数据重复删除技术中,可以防止复制数据存储到数据存储。为了实现这一点,已驻留于数据存储中的数据的单位和/或没有驻留于数据存储中的数据的单位可被标识,并且,只有没有驻留于数据存储中的单位在数据存储中被存储或者被更新。本申请中的数据重复删除可由此减少需要的存储容量,原因是数据的特定的单位的更少或者仅仅一个副本被保持。一种用于数据系统中的数据重复删除的技术是使发送器在接收器处上载要被处理(例如,存储于数据存储系统中)的所有数据,并且使接收器标识要被处理的数据的单位。但是,该技术不减少发送器与接收器之间的带宽使用。可减少带宽使用的数据重复删除的常规技术是使发送器标识要被上载到接收器的数据的单位;只有标识的数据的单位从发送 ...
【技术保护点】
一种方法,包括:在本地将数据的指纹存储到指纹字典,其中,所述数据包含多个数据单位,并且,所述指纹字典中的各指纹唯一地标识所述数据中的相应的数据单位;通过网络从装置接收各自与在所述装置上高速缓存的不同的数据单位对应的一个或更多个指纹;针对从所述装置接收的一个或更多个指纹中的每一个搜索所述指纹字典,以确定所述指纹是处于所述指纹字典中还是不处于所述指纹字典中,其中,确定指纹不处于所述指纹字典中指示要被上载的对应的数据单位;通过所述网络向所述装置发送通过所述搜索指纹字典确定的要被上载的一个或更多个数据单位的指示;和通过所述网络从所述装置接收指示的一个或更多个数据单位,其中,各接收的数据单位与不处于所述指纹字典中的指纹对应。
【技术特征摘要】
【国外来华专利技术】2010.12.29 US 12/981,393;2010.12.29 US 12/981,3971.一种用于数据重复删除的方法,包括:通过网络向虚拟化数据存储提供者的多个顾客提供基于网络的虚拟化数据存储,其中,存储于所述基于网络的虚拟化数据存储中的数据包含用于所述多个顾客中的每一个的顾客数据;在所述虚拟化数据存储提供者的所述基于网络的虚拟化数据存储中,在本地将数据的指纹存储到指纹字典,其中,所述数据包含多个数据单位,并且其中,所述指纹字典中的各指纹唯一地标识所述数据中的相应的数据单位;经由网络服务接口通过网络由所述虚拟化数据存储提供者并且从所述虚拟化数据存储提供者的多个顾客当中的顾客的顾客装置接收各自与在所述顾客装置上高速缓存的不同的数据单位对应的一个或更多个指纹,其中所述网络服务接口为所述虚拟化数据存储提供者的多个顾客提供对所述基于网络的虚拟化数据存储的访问;针对从所述顾客装置接收的一个或更多个指纹中的每一个搜索所述指纹字典,以确定所述指纹是处于所述指纹字典中还是不处于所述指纹字典中,其中,确定指纹不处于所述指纹字典中指示要被上载的对应的数据单位;经由所述网络服务接口通过所述网络向所述顾客装置发送通过所述搜索指纹字典确定的要被上载的一个或更多个数据单位的指示;经由所述网络服务接口通过所述网络从所述顾客装置接收指示的一个或更多个数据单位,其中,各接收的数据单位与不处于所述指纹字典中的指纹对应;和将从所述顾客装置接收的指示的一个或更多个数据单位存储在所述基于网络的虚拟化数据存储中。2.如权利要求1所述的方法,其中,各指纹是相应的数据单位的散列。3.如权利要求2所述的方法,其中,根据应用于相应的数据单位的加密性强的单向散列函数产生所述散列。4.如权利要求1所述的方法,还包括用从所述顾客装置接收的与各数据单位对应的指纹更新所述指纹字典。5.如权利要求1所述的方法,其中,所述数据包含多个数据块,其中,各数据块包含多个数据单位中的两个或更多个。6.如权利要求1所述的方法,其中所述顾客装置在本地高速缓存相应的顾客的来自所述数据存储的顾客数据的至少一部分。7.如权利要求1所述的方法,还包括:在从所述顾客装置接收指示的一个或更多个数据单位之后,确定所述搜索指示处于所述指纹字典中的至少一个指纹随后已从所述指纹字典被删除;通过所述网络向所述顾客装置发送与所述至少一个指纹对应的至少一个数据单位的指示;和通过所述网络从所述顾客装置接收指示的至少一个数据单位...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。