利用多种选择标准进行数据管理的方法和系统技术方案

技术编号:2917934 阅读:223 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了用于进行数据管理和数据处理的系统和方法。各实施例可以包括涉及到以相当高质量的结果进行快速数据选择的系统和方法,并且可以包括较快数据选择函数和较慢数据选择函数。各实施例可以包括涉及到针对数据集或数据串的数据散列和/或数据冗余识别和消除的系统和方法。各实施例可以包括第一选择函数和第二选择函数,所述第一选择函数被用来从数据集或数据流预先选择边界点或数据块/窗,所述第二选择函数被用来细化所述边界点或数据块/窗。所述第二选择函数在确定所述边界点或数据块/窗在所述数据集或数据流中的最佳位置方面可以具有更好的性能。在各实施例中,可以通过第一较快散列函数和较慢但是辨识力更强的第二散列函数来处理数据。

【技术实现步骤摘要】
【国外来华专利技术】本专利申请涉及到同样于2006年12月1日提交的授予CezaryDubnicki、Erik Kruus和Cristian Ungureanu的标题为“MEHTODS ANDSYSTEMS FOR QUICK AND EFFICIENT DATA MANAGEMENTAND/OR PROCESSING(用于进行快速且高效的数据管理和/或处理的方法和系统)”的美国专利申请No.(TBD),其被合并在此以作参考。本公开内容可能包含受到版权保护的信息,比如这里给出的各种示例性C++代码和伪代码。版权所有者不反对由任何人对本专利内容或者出现在美国专利商标局文件或记录中的本专利进行复制再现,但是在其他方面保留全部版权权利。
本专利技术涉及数据处理和数据管理的领域,更具体来说,本专利技术涉及针对诸如数据散列和/或数据冗余消除之类的应用的快速数据处理的方法和系统。
技术介绍
每天都有越来越多的信息在全世界范围内被产生,并且所保留及传送的信息量持续以惊人的速度增加,从而在数据处理和管理方面产生了严重的问题。许多所述信息被电子地产生、处理、保持、传送以及存储。仅仅尝试管理所有这种数据以及相关的数据流和存储的数量就令人吃惊。因此已经开发出多种系统和方法来更加快速地处理数据,并且通过消除尽可能多的复制数据来存储及传送更少的数据。例如,已经开发出多种系统和方法以帮助减少针对存储、传送来自各种电子设备的复制数据的需求,所述电子设备例如是计算机、计算机网络(比如内联网和因特网)、诸如电话和PDA的移动设备、硬件存储设备等等。此外,特别在例如数据传输期间需要利用密码术来加密数据。例如,已经开发出提供强大的(即密码的)散列的系统和方法,并且可以很自然地把这种方法合并在利用数据散列在不安全的通信信道上实现数据冗余消除的应用中。-->在各种电子数据管理方法和系统中,已经开发了多种方法以用来散列数据和/或例如从数据存储和数据传输中消除冗余数据。这些技术包括各种数据压缩、数据散列和密码方法。在许多文章中公开了一些示例性技术,其中包括:Philip Koopman的“32-Bit Cyclic Redundancy Codes forInternet Applications(用于因特网应用的32比特循环冗余码)”(Proceedings of the 2002 Conference on Dependable Systems andNetworks,2002);Jonathan Stone和Michael Greenwald的“Performanceof Checksums and CRCs over Real Data(校验和及CRC在真实数据上的性能)”(IEEE/ACM Transactions on Networking,1998);Val Henson和Richard Henderson的“An Analysis of Compare-by-Hash(散列比较的分析)”(Proceedings of the Ninth Workshop on Hot Topics in OperatingSystems,Lihue,Hawaii,2003年5月,pp.13-18);以及RaiJain的“AComparison of Hashing Schemes for Address Lookup in ComputerNetworks(用于计算机网络中的地址查找的散列方案的比较)”(IEEETransactions on Communications,1992)。此外还在多篇美国专利和专利公开中公开了各种示例性技术,其中包括美国专利公开No.2005/0131939、2006/0047855和2006/0112148以及美国专利No.7,103,602和6,810,398。然而,所述已知的技术缺少特定有用的能力。一般来说,性能更好的选择技术(例如高数据冗余消除)使用过多的处理时间(花费过长时间),非常快速的数据选择技术可能缺少所期望的数据消除程度。例如,存在多种散列函数方法,其中包括整文件散列、固定尺寸数据块散列以及内容定义的数据组块散列。但是在这些技术当中没有一种技术既相当快速(仅仅使用少量计算时间)又具有识别出数据集中的大部分数据冗余的能力(例如具有高数据冗余消除)。因此,需要一种既具有合理的性能又快速的数据选择技术。例如,需要一种能够快速地执行数据散列和/或数据冗余识别及消除并且同时仍然能够识别出数据集中的大部分冗余数据的散列和/或数据冗余识别及消除系统和方法。还需要一种更加快速地确定适当的断点和边界以便在内容定义的散列函数中确定数据块或组块的系统和方法。
技术实现思路
-->本专利技术总体上针对提供用于数据管理和数据处理的系统和方法。例如,本专利技术的实施例可以包括用于以性能更好的选择结果(例如高数据冗余消除)进行快速数据选择的系统和方法,并且还可以包括更快的数据选择处理和更慢的数据选择处理。此外,提供了用于对数据集或数据串进行数据散列和/或数据冗余识别及消除的示例性系统和方法。本专利技术可以更为鲁棒并且可以提供在一定程度上把快速散列的速度与确定更适当的断点或边界集合的散列的更加鲁棒的性能特性相组合的系统和方法。本专利技术可以是计算机实现的专利技术,其包括用于在不显著降低数据处理结果的质量的情况下提高数据处理速度的软件和硬件。在本专利技术的各实施例中,例如提供了可以包括第一选择函数并且可以包括第二选择函数的系统和方法,所述第一选择函数被用来从数据集或数据流中预先选择边界点或者数据块/窗,所述第二选择函数可以细化来自数据集或数据流的边界点或数据块/窗。第一选择函数的计算可以比第二选择函数更快(例如花费更少的处理时间来滚动,所谓滚动即产生对应于来自所述数据集或数据流的后续数据块/窗的散列值。)。第二选择函数在确定各边界点或数据块/窗在所述数据集或数据流中的适当位置方面可能具有更好的性能。第二选择函数可以是(但不必是)可滚动的。一个示例性第一选择函数可以是使用例如移动窗的基于矩形波串和(boxcar sum)的函数。这是一种特别快速的数据选择处理。一个示例性第二选择函数可以是Rabin指纹函数。所述第一选择函数特别快速,并且所述第二选择函数具有特别好的比特随机化特性。在各实施例中,第一选择函数和第二选择函数可以被用来生成多个内容定义的边界点、块断点或组块点,以便确定应当在何处把数据集或数据流分离成各数据块、组块或窗。在各实施例中,所述内容定义的边界可以被用来确定数据块、组块或窗尺寸,可以对所述数据块、组块或窗尺寸应用散列函数,并且可以产生所得到的散列值。在各实施例中,可以把所得到的散列值与一个或多个所存储的散列值进行比较,以便确定所述数据块、组块或窗是否是完全复制的数据,或者确定是否应当把该新的散列值存储为独特的数据块、组块或窗。在各实施例中,可以提供一种用于数据散列的内容定义的技术。所述内容定义的技术可以包括处理系统,该处理系统具有较快散列函数模块(例如由于仅有较少的计算因此花费较少处理时间)和较慢散列函数-->模块(例如由于有较多的计算因此花费较多处理时间)。所述较快散列函数模块可以接收例如来自数据流的数据,并且可以预先选择可在该本文档来自技高网
...

【技术保护点】
一种数据管理方法,包括以下步骤: 利用第一选择函数预先选择数据流中的多个数据窗当中的一部分;以及 利用第二选择函数选择所述多个数据窗的所述预先选择的部分的子集。

【技术特征摘要】
【国外来华专利技术】US 2006-12-1 11/566,1221、一种数据管理方法,包括以下步骤:利用第一选择函数预先选择数据流中的多个数据窗当中的一部分;以及利用第二选择函数选择所述多个数据窗的所述预先选择的部分的子集。2、权利要求1的方法,其中,所述第一选择函数在选择数据块边界方面比所述第二选择函数更快。3、权利要求2的方法,其中,所述第一选择函数在窗选择方面比所述第二选择函数更快。4、权利要求1的方法,其中,所述第一选择函数包括矩形波串和函数、MLCG函数或者rolN-xor函数。5、权利要求4的方法,其中,所述第一选择函数是所述矩形波串和函数,并且所述矩形波串和函数与关于所述矩形波串和的值的选择标准相耦合。6、权利要求1的方法,其中,所述第二选择函数包括Rabin指纹、SHA-1函数或者CRC32c函数。7、权利要求1的方法,其中,所述第一选择函数包括滚动、滑动或移动窗函数。8、权利要求1的方法,其中,所述窗被利用来定义供散列的数据组,并且确定所述数据流中的断点的速度得到提高。9、权利要求1的方法,还包括以下步骤:生成对应于由所述子集的一个或多个组块点确定的数据组块尺寸的值,其中所生成的该值表示包含在所述数据组块中的底层数据。10、权利要求9的方法,还包括以下步骤:把所生成的该值与一个或多个先前生成的值进行比较,以便确定所生成的该值是否等于所述一个或多个先前生成的值。11、权利要求10的方法,还包括以下步骤:确定存在数据复制;以及停止对被确定为具有复制数据的数据组块中的数据的进一步处理。12、权利要求10的方法,还包括以下步骤:如果没有数据复制则存储所生成的该值。13、权利要求1的方法,还包括以下步骤:把包含在由所述第二选择函数所选择的新的数据窗或数据组块中的底层数据与来自多个先前定义的数据窗或数据组块的先前遇到的底层数据进行比较。14、权利要求13的方法,还包括以下步骤:如果包含在所述新数据窗中的底层数据不等于所述先前遇到的底层数据,则输出包含在所述新数据窗中的底层数据;以及如果包含在所述新数据组块中的底层数据等于所述先前遇到的底层数据,则不输出包含在所述新数据组块中的底层数据。15、权利要求1的方法,还包括以下步骤:生成对应于数据窗或数据组块的值,该值表示包含在该数据窗或数据组块中的底层数据。16、权利要求15的方法,还包括...

【专利技术属性】
技术研发人员:C杜布尼基K利乔塔E克鲁斯C昂古里努
申请(专利权)人:美国日本电气实验室公司
类型:发明
国别省市:US[美国]

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

1