Systems and methods for transformation of logical data objects for storage
First Claim
1. A method for compressing a logical data object for storage in a storage device configured to operate with at least one storage protocol, said method comprising:
- a) creating, in the storage device, a compressed logical data object comprising one or more allocated compressed sections with a predefined size;
b) receiving variable size chunks of raw data corresponding to the compressed raw logical data object, wherein the received chunks of raw data are in non-compressed form;
c) sequentially storing said received chunks of raw data in non-compressed form in a compressed section in accordance with an order said chunks of raw data in non-compressed form are received;
d) providing an indication that the compressed section holds data in a non-transformed form;
e) mapping the data in the logical data object and the data stored in the allocated compressed sections;
f) scanning the compressed logical data object to identify one or more compressed sections holding data in non-compressed form;
g) compressing each data chunk stored in each identified compression section, wherein the compression is provided via an adaptive dictionary, and at least two data chunks are stored in different compressed sections via different dictionaries; and
h) sequentially storing the data chunks including compressed data in one or more newly allocated compressed sections.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and systems for transforming a logical data object for storage in a storage device configured to operate with at least one storage protocol. One method comprises creating in the storage device a transformed logical data object comprising a one or more allocated storage sections with a predefined size and receiving one or more data chunks corresponding to the transformed logical data object. The method further comprises determining if each received data chunk comprises a predefined criterion, transforming each data chunk that comprises the predefined criterion, maintaining each data chuck in raw form that does not comprise the predefined criterion, and sequentially storing each transformed data chuck and data chunk in raw form into said one or more allocated storage sections in accordance with an order said transformed data chunks and data chunks in raw form are received. One system comprises a processor configured to perform the above method.
140 Citations
20 Claims
-
1. A method for compressing a logical data object for storage in a storage device configured to operate with at least one storage protocol, said method comprising:
-
a) creating, in the storage device, a compressed logical data object comprising one or more allocated compressed sections with a predefined size; b) receiving variable size chunks of raw data corresponding to the compressed raw logical data object, wherein the received chunks of raw data are in non-compressed form; c) sequentially storing said received chunks of raw data in non-compressed form in a compressed section in accordance with an order said chunks of raw data in non-compressed form are received; d) providing an indication that the compressed section holds data in a non-transformed form; e) mapping the data in the logical data object and the data stored in the allocated compressed sections; f) scanning the compressed logical data object to identify one or more compressed sections holding data in non-compressed form; g) compressing each data chunk stored in each identified compression section, wherein the compression is provided via an adaptive dictionary, and at least two data chunks are stored in different compressed sections via different dictionaries; and h) sequentially storing the data chunks including compressed data in one or more newly allocated compressed sections. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for compressing a logical data object for storage in a storage device configured to operate with at least one storage protocol, said method comprising:
-
a) creating, in the storage device, a compressed logical data object comprising one or more allocated compressed sections with a predefined size; b) receiving variable size chunks of raw data corresponding to the compressed raw logical data object, wherein the received chunks of raw data are in non-compressed form; c) sequentially storing said received chunks of raw data in non-compressed form in a compressed section in accordance with an order said chunks of raw data in non-compressed form are received; d) providing an indication that the compressed section holds data in a non-transformed form; e) mapping the data in the logical data object and the data stored in the allocated compressed sections; f) scanning the compressed logical data object to identify one or more compressed sections holding data in non-compressed form; g) compressing each data chunk stored in each identified compressed section; and h) sequentially storing the data chunks including compressed data in one or more newly allocated compressed sections, wherein the compression is provided via an adaptive dictionary and the data chunks are stored in the newly allocated compressed sections via the adaptive dictionary. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A system for compressing a logical data object for storage in a storage device configured to operate with at least one storage protocol, said system comprising:
-
a processor; and memory coupled to the processor, wherein the memory is configured to store computer code that, when executed by the processor, causes the processor to; a) create, in the storage device, a compressed logical data object comprising one or more allocated compressed sections with a predefined size, b) receive variable size chunks of raw data corresponding to the compressed raw logical data object, wherein the received chunks of raw data are in non-compressed form, c) sequentially store said received chunks of raw data in non-compressed form in a compressed section in accordance with an order said chunks of raw data in non-compressed form are received, d) provide an indication that the compressed section holds data in a non-transformed form, e) map the data in the logical data object and the data stored in the allocated compressed sections, f) scan the compressed logical data object to identify one or more compressed sections holding data in non-compressed form, g) compress each data chunk stored in each identified compressed section, and h) sequentially store the data chunks including compressed data in one or more newly allocated compressed sections, wherein the compression is provided via an adaptive dictionary and the data chunks are stored in the newly allocated compressed sections via the adaptive dictionary. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A computer program product comprising a non-transitory computer readable storage medium including a computer readable program code embodied therein for compressing a logical data object for storage in a storage device configured to operate with at least one storage protocol, said computer program product comprising:
-
a) computer code for creating, in the storage device, a compressed logical data object comprising one or more allocated compressed sections with a predefined size; b) computer code for receiving variable size chunks of raw data corresponding to the compressed raw logical data object, wherein the received chunks of raw data are in non-compressed form; c) computer code for sequentially storing said received chunks of raw data in non-compressed form in a compressed section in accordance with an order said chunks of raw data in non-compressed form are received; d) computer code for providing an indication that the compressed section holds data in a non-transformed form; e) computer code for mapping the data in the logical data object and the data stored in the allocated compressed sections; f) computer code for scanning the compressed logical data object to identify one or more compressed sections holding data in non-compressed form; g) computer code for compressing each data chunk stored in each identified compressed section; and h) computer code for sequentially storing data chunks including compressed data in one or more newly allocated compressed sections, wherein the compression is provided via an adaptive dictionary and the data chunks are stored in the newly allocated compressed sections via the adaptive dictionary. - View Dependent Claims (17, 18, 19, 20)
-
Specification