Patent ID: 7860843
Filing Date: 2010-12-28
Classification: H03M

Abstract:
1. A computer implemented method for storing data comprising: receiving a file; hashing a first set of meta-data file properties of the file to generate an identification hash and attempting to match the identification hash to stored identification hashes of previously stored files; upon failing to match said identification hash, hashing of a second set of meta-data file properties of the file to generate a secondary hash and attempting to correlate the secondary hash to stored secondary hashes of previously stored files, wherein said first and second sets of meta-data file properties are different; upon determining that the secondary hash correlates to a secondary hash of a previously stored file, obtaining content of the previously stored file; buffering the content of the previously stored file into a first series of data portions; buffering the content of the file into a second series of- like-sized data portions; preloading a dictionary-based compression engine with one of the first series of data portions of the previously stored file, wherein the one data portion of the previously stored file as loaded in the dictionary-based compression engine is uncompressed and defines an individual dictionary block; compressing a corresponding one of said second series of like-sized data portions of the file using the dictionary-based compression engine as loaded with the data portion of the previously stored file as a dictionary, wherein a compressed data portion is generated and wherein said compressed data portion references the individual dictionary block utilized to generate said compressed data portion; and repeating said preloading and compressing steps for each of said first series of data portions to generate a series of compressed data portions; and storing said series of compressed data portions to define a compressed version of the file.