Systems and methods for transformation of logical data objects for storage
First Claim
1. A method of transforming a logical data object for storage in a storage device coupled to a network utilizing a network protocol, said method comprising:
- creating in the storage device a transformed logical data object comprising a plurality of allocated storage sections with a plurality of different predefined sizes, wherein each different predefined size corresponds to a different type of data stored in each storage section to create different sized storage sections;
receiving, via the network, a plurality of data chunks comprising a variable size and that correspond to the transformed logical data object at a transformation system separated from the storage device via the network;
comparing a characteristic of each received data chunk to a predefined criterion related to an estimated or actual time of transformation of each data chunk, the predefined criterion including an estimated time necessary to compress data which, being compressed, would substantially amount to a compressed section size;
transforming, by the transformation system, each of the plurality of data chunks, wherein transforming comprises compressing data chunks including text data, voice data, and image data at different ratios to fit in the different sized storage sections;
identifying a received data chunk as being in a non-transformed or partly transformed form and accumulating each non-transformed or partly transformed data chunk in one of the plurality of allocated storage sections, if the predefined criterion does not match the characteristic of the received data chunk, wherein the identification of the received data chunk as being in the non-transformed or partly transformed form is included as an entry in an index;
repeating the comparing and at least one of the transforming step and the identifying step for each subsequently received data chunk, and accumulating subsequent compressed data chunks and non-transformed data chunks or compressed data chunks and partly transformed data chunks to form an accommodation section having a size matching the different sized storage sections;
transmitting, via the network, the transformed plurality of data chunks to the storage device; and
sequentially storing the transformed plurality of data chunks into said plurality allocated storage sections in accordance with an order said plurality of data chunks are transformed and in accordance with the different type of data in each storage section,wherein non-transformed and partly transformed data chunks are data chunks in which transformation was interrupted.
0 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for transforming a logical data object for storage in a storage device operable with at least one storage protocol, creating, reading, writing, optimization and restoring thereof. Transforming the logical data object comprises creating in the storage device a transformed logical data object comprising one or more allocated storage sections with a predefined size; transforming one or more sequentially obtained chunks of obtained data corresponding to the transforming logical data object; and sequentially storing the processed data chunks into said storage sections in accordance with a receive order of said chunks, wherein said storage sections serve as atomic elements of transformation/de-transformation operations during input/output transactions on the logical data object. The processing may comprise two or more data transformation techniques coordinated in time, concurrently executing autonomous sets of instructions, and provided in a manner preserving the sequence of processing and storing the processed data chunks.
142 Citations
18 Claims
-
1. A method of transforming a logical data object for storage in a storage device coupled to a network utilizing a network protocol, said method comprising:
-
creating in the storage device a transformed logical data object comprising a plurality of allocated storage sections with a plurality of different predefined sizes, wherein each different predefined size corresponds to a different type of data stored in each storage section to create different sized storage sections; receiving, via the network, a plurality of data chunks comprising a variable size and that correspond to the transformed logical data object at a transformation system separated from the storage device via the network; comparing a characteristic of each received data chunk to a predefined criterion related to an estimated or actual time of transformation of each data chunk, the predefined criterion including an estimated time necessary to compress data which, being compressed, would substantially amount to a compressed section size; transforming, by the transformation system, each of the plurality of data chunks, wherein transforming comprises compressing data chunks including text data, voice data, and image data at different ratios to fit in the different sized storage sections; identifying a received data chunk as being in a non-transformed or partly transformed form and accumulating each non-transformed or partly transformed data chunk in one of the plurality of allocated storage sections, if the predefined criterion does not match the characteristic of the received data chunk, wherein the identification of the received data chunk as being in the non-transformed or partly transformed form is included as an entry in an index; repeating the comparing and at least one of the transforming step and the identifying step for each subsequently received data chunk, and accumulating subsequent compressed data chunks and non-transformed data chunks or compressed data chunks and partly transformed data chunks to form an accommodation section having a size matching the different sized storage sections; transmitting, via the network, the transformed plurality of data chunks to the storage device; and sequentially storing the transformed plurality of data chunks into said plurality allocated storage sections in accordance with an order said plurality of data chunks are transformed and in accordance with the different type of data in each storage section, wherein non-transformed and partly transformed data chunks are data chunks in which transformation was interrupted. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for transforming a logical data object for storage in a storage device coupled to a network utilizing a network 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; create, in the storage device, a transformed logical data object comprising a plurality of allocated storage sections with a plurality of different predefined sizes, wherein each different predefined size corresponds to a different type of data stored in each storage section to create different sized storage sections, receive, via the network, a plurality of data chunks comprising a variable size and that correspond to the transformed logical data object at a transformation system separated from the storage device via the network, compare a characteristic of each received data chunk to a predefined criterion related to an estimated or actual time of transformation of each data chunk, the predefined criterion including an estimated time necessary to compress data which, being compressed, would substantially amount to a compressed section size; transform, via the transformation system, each the plurality of data chunks, wherein transforming comprises compressing data chunks including text data, voice data, and image data at different ratios to fit in the different sized storage sections, identify a received data chunk as being in a non-transformed or partly transformed form and accumulating each non-transformed or partly transformed data chunk in one of the plurality of allocated storage sections, if the predefined criterion does not match the characteristic of the received data chunk, wherein the identification of the received data chunk as being in the non-transformed or partly transformed form is included as an entry in an index, repeat the comparing and at least one of the transforming step and the identifying step for each subsequently received data chunk, and accumulating subsequent compressed data chunks and non-transformed data chunks or compressed data chunks and partly transformed data chunks to form an accommodation section having a size matching the different sized storage sections, transmit, via the network, the transformed plurality of data chunks to the storage device; and sequentially store the transformed plurality of data chunks into said plurality of allocated storage sections in accordance with an order said transformed plurality of data chunks are transformed and in accordance with the different type of data in each storage section, wherein non-transformed and partly transformed data chunks are data chunks in which transformation was interrupted. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer readable storage medium including a computer readable program code embodied therein for transforming a logical data object for storage in a storage device coupled to a network utilizing a network protocol, said computer program product comprising:
-
computer code for creating in the storage device a transformed logical data object comprising a plurality of allocated storage sections with a plurality of different predefined sizes, wherein each different predefined size corresponds to a different type of data stored in each storage section to create different sized storage sections; computer code for receiving, via the network, a plurality of data chunks comprising a variable size and that correspond to the transformed logical data object at a transformation system separated from the storage device via the network; computer code for comparing a characteristic of each received data chunk to a predefined criterion related to an estimated or actual time of transformation of each data chunk, the predefined criterion including an estimated time necessary to compress data which, being compressed, would substantially amount to a compressed section size; computer code for transforming, via the transformation system, each of the plurality of data chunks, wherein transforming comprises compressing data chunks including text data, voice data, and image data at different ratios to fit in the different sized storage sections; computer code for identifying a received data chunk as being in a non-transformed or partly transformed form and accumulating each non-transformed or partly transformed data chunk in one of the plurality of allocated storage sections, if the predefined criterion does not match the characteristic of the received data chunk, wherein the identification of the received data chunk as being in the non-transformed or partly transformed form is included as an entry in an index; computer code for repeating the comparing and at least one of the transforming step and the identifying step for each subsequently received data chunk, and accumulating subsequent compressed data chunks and non-transformed data chunks or compressed data chunks and partly transformed data chunks to form an accommodation section having a size matching the different sized storage sections; computer code for transmitting, via the network, the transformed plurality of data chunks to the storage device; and computer code for sequentially storing the transformed plurality of data chunks into said plurality of allocated storage sections in accordance with an order said transformed plurality of data chunks are transformed and in accordance with the different type of data in each storage section, wherein non-transformed and partly transformed data chunks are data chunks in which transformation was interrupted. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification