Systems and methods for transformation of logical data objects for storage
First Claim
1. A method for optimization of a compressed logical data object including a plurality of storage sections storing compressed data, said method comprising:
- receiving, by a processor, a request to store data in the compressed logical data object;
searching the plurality of storage sections to identify a storage section comprising a mixture of outdated compressed data and live compressed data, and including greater than a predetermined percentage of the outdated compressed data, wherein the outdated compressed data includes a first timestamp prior to a predefined time and the live compressed data includes a second timestamp subsequent to the predefined time;
decompressing all of the outdated compressed data and all of the live compressed data in the storage section to generate a first portion of outdated data and a second portion of live data;
deleting the first portion of outdated data;
recompressing the second portion of live data;
storing the recompressed second portion of live data in a different storage section, wherein the recompressed second portion of live data keeps the second timestamp subsequent to recompression and storage of the second portion of live data; and
releasing the storage section, wherein physical space corresponding to the storage section is available for re-allocation to a new storage section subsequent to releasing the storage section.
0 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for compressing a raw logical data object (201) for storage in a storage device operable with at least one storage protocol, creating, reading, writing, optimizatic in and restoring thereof. Compressing the raw logical data object (201) comprises creating in the storage device a compressed logical data object (203) comprising a header (204) and one or more allocated compressed sections with predefined size (205-1-205-2); compressing one or more sequentially obtained chunks of raw data (202-1-202-6) corresponding to the raw logical data object (201) thus giving rise to the compressed data chunks (207-1-207-6); and sequentially accommodating the processed data chunks into: said compressed sections (205-1-205-2) in accordance with an order said chunks received, wherein said compressed sections serve as atomic elements of compression/decompression operations during input/output transactions on the logical data object.
-
Citations
21 Claims
-
1. A method for optimization of a compressed logical data object including a plurality of storage sections storing compressed data, said method comprising:
-
receiving, by a processor, a request to store data in the compressed logical data object; searching the plurality of storage sections to identify a storage section comprising a mixture of outdated compressed data and live compressed data, and including greater than a predetermined percentage of the outdated compressed data, wherein the outdated compressed data includes a first timestamp prior to a predefined time and the live compressed data includes a second timestamp subsequent to the predefined time; decompressing all of the outdated compressed data and all of the live compressed data in the storage section to generate a first portion of outdated data and a second portion of live data; deleting the first portion of outdated data; recompressing the second portion of live data; storing the recompressed second portion of live data in a different storage section, wherein the recompressed second portion of live data keeps the second timestamp subsequent to recompression and storage of the second portion of live data; and releasing the storage section, wherein physical space corresponding to the storage section is available for re-allocation to a new storage section subsequent to releasing the storage section. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for optimization of a compressed logical data object including a plurality of storage sections storing compressed data, said method comprising:
-
a processor; and memory coupled to said processor, wherein the processor is configured to store computer code that, when executed by the processor, causes the processor to; receive a request to store data in the compressed logical data object, search the plurality of storage sections to identify a storage section comprising a mixture of outdated compressed data and live compressed data, and including greater than a predetermined percentage of outdated compressed data, wherein the outdated compressed data includes a first timestamp prior to a predefined time and the live compressed data includes a second timestamp subsequent to the predefined time, decompress all of the outdated compressed data and all of the live compressed data in the storage section to generate a first portion of outdated data and a second portion of live data, delete the first portion of outdated data, recompress the second portion of live data, store the recompressed second portion of live data in a different storage section, wherein the recompressed second portion of live data keeps the second timestamp subsequent to recompression and storage of the second portion of live data, and release the storage section, wherein physical space corresponding to the storage section is available for re-allocation to a new storage section subsequent to releasing the storage section. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer program product comprising a hardware processor configured for:
-
receiving a request to store data in the compressed logical data object; searching the plurality of storage sections to identify a storage section comprising a mixture of outdated compressed data and live compressed data, and including greater than a predetermined percentage of outdated compressed data, wherein the outdated compressed data includes a first timestamp prior to a predefined time and the live compressed data includes a second timestamp subsequent to the predefined time; decompressing all of the outdated compressed data and all of the live compressed data in the storage section to generate a first portion of outdated data and a second portion of live data; deleting the outdated data; recompressing the second portion of live data; storing the recompressed second portion of live data in a different storage section, wherein the recompressed second portion of live data keeps the second timestamp subsequent to recompression and storage of the second portion of live data; and releasing the storage section, wherein physical space corresponding to the storage section is available for re-allocation to a new storage section subsequent to releasing the storage section. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification