Method and system for compression of data for block mode access storage
First Claim
Patent Images
1. 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 constituting clusters;
c) compressing the raw data accommodated in a cluster and thereby generating compressed data to be stored in a respective compressed section within the storage logical unit;
d) facilitating mapping between the compressed data stored in the compressed section and their virtual accommodation at the virtual logical unit.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system for creating, reading and writing compressed data for use with a block mode access storage. The compressed data are packed into plurality of compressed units and stored in a storage logical unit (LU). One or more corresponding compressed units may be read and/or updated with no need of restoring the entire storage logical unit whilst maintaining de-fragmented structure of the LU.
253 Citations
37 Claims
-
1. 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 constituting clusters;
c) compressing the raw data accommodated in a cluster and thereby generating compressed data to be stored in a respective compressed section within the storage logical unit;
d) facilitating mapping between the compressed data stored in the compressed section and their virtual accommodation at the virtual logical unit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 30)
-
-
19. For use with a block mode access storage protocol, a method of reading raw data stored as compressed data in at least one storage logical unit, wherein said compressed data are packed into one or more compressed sections corresponding to fixed-size portions of raw data constituting clusters virtually accommodated in a virtual logical unit, the method comprising:
-
a) determining first cluster to be read;
b) determining a serial number of corresponding compressed section;
c) facilitating restoring the data corresponding to said cluster. - View Dependent Claims (20, 21, 28, 31)
-
-
22. For use with a block mode access storage protocol, a method of writing data at a given range to data stored as compressed data in at least one storage logical unit, wherein said compressed data are packed into one or more compressed sections corresponding to fixed-size portions of raw data constituting clusters virtually accommodated in a virtual logical unit, the method comprising:
-
a) determining first cluster to be updated thereby constituting the original cluster;
b) determining a serial number of corresponding compressed section;
c) facilitating restoring the data corresponding to said original cluster;
d) calculating an offset of the updating data within said cluster and facilitating the update at the given data range;
e) compressing the updated cluster into an updated compressed section;
f) facilitating overwriting said original compressed section with updated compressed section. - View Dependent Claims (23, 24, 25, 26, 27, 29, 32)
-
-
33. For use with a block mode access storage protocol, a system for compressing data for storage in at least one storage logical unit, said system is configured to perform at least the following:
-
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 constituting clusters;
c) compressing the raw data accommodated in a cluster and thereby generating compressed data to be stored in a respective compressed section within the storage logical unit;
d) facilitating mapping between the compressed data stored in the compressed section and their virtual accommodation at the virtual logical unit.
-
-
34. For use with a block mode access storage protocol, a program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps 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 constituting clusters;
c) compressing the raw data accommodated in a cluster and thereby generating compressed data to be stored in a respective compressed section within the storage logical unit;
d) facilitating mapping between the compressed data stored in the compressed section and their virtual accommodation at the virtual logical unit.
-
-
35. For use with a block mode access storage protocol, a computer program product comprising a computer useable medium having computer readable program code embodied therein of creating compressed data for storage in at least one storage logical unit, said computer program product comprising:
-
a) computer readable program code for causing the computer to create 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) computer readable program code for causing the computer to segment the virtual logical unit into one or more virtual storage portions constituting clusters;
c) computer readable program code for causing the computer to compress the raw data accommodated in a cluster and thereby generating compressed data to be stored in a respective compressed section within the storage logical unit;
d) computer readable program code for causing the computer to facilitate mapping between the compressed data stored in the compressed section and their virtual accommodation at the virtual logical unit.
-
-
36. For use with a block mode access storage protocol, a method of compressing data for storage in at least one storage logical unit, said method facilitating direct access to the compressed data whilst maintaining de-fragmented structure of the storage logical unit.
-
37. For use with a block mode access storage protocol, a method of writing data to compressed data storing in at least one storage logical unit, wherein the compressed data are packed into one or more compressed units, said method facilitating update of one or more corresponding compressed unit with no need of restoring the entire data whilst maintaining de-fragmented structure of the storage logical unit.
Specification