Patent ID: 8347004

Claim:
For use with a block mode access storage protocol, a method of creating compressed data for storage in at least one storage logical unit, said method comprising: a) creating in respect to at least one storage logical unit a corresponding virtual logical unit accessible by said block mode access protocol and configured to virtually accommodate raw data, wherein a size of the virtual logical unit corresponds to an estimated size of raw data which, being compressed, would substantially amount to a size of the storage logical unit; b) segmenting the virtual logical unit into one or more virtual storage portions (clusters); c) compressing the raw data accommodated in at least one cluster and thereby generating compressed data to be stored in a respective compressed section within the storage logical unit; d) mapping between the compressed data stored in the compressed section and their virtual accommodation at the virtual logical unit; e) dividing at least one compressed section into at least one fixed-size compression logical units (CLU) and creating a section table with at least one record describing said compressed section, said record holding at least information on CLUs corresponding to the compressed section and storage location pointers pertaining to said CLUs; f) determining a serial number of first compressed section comprising data to be updated thereby constituting the original compressed section; g) determining the CLUs corresponding to said original compressed section and storage location thereof by referring to the section table; h) facilitating restoring the data from said original compressed section; i) calculating an offset of the updating data within corresponding cluster and facilitating the update at the given data range; j) compressing the updated cluster into an updated compressed section; and k) overwriting said original compressed section with updated compressed section.