Data compression using compression blocks and partitions
AssigneeInternational Business Machines Corporation
InventorsJonathan Amit, Nir Halowani, Chaim Koifman, Sergey Marenkov
Life of this patent
Estimating the term…
Abstract
Compression blocks are divided into partitions creating a two dimensional divide of the compression blocks by slicing the compression blocks forming a first dimension and sub-partitioning the compression blocks into the partitions forming a second dimension. Each one of the partitions are compressed in separate compression streams.
Claims9
A method for data compression using compression blocks and partitions by a processor device in a computing environment, the method comprising:
- for randomly accessed data, creating a two dimensional divide of the compression blocks by slicing the compression blocks forming a first dimension, the first dimension compressing the compression blocks which are output as variable-sized partitions, and forming a second dimension by sub-partitioning each of the variable-sized partitions of the compression blocks into fixed-sized sub-partitions, wherein each one of the sub-partitions are compressed in separate compression streams;
- independently compressing each one of the sub-partitions;
- independently decompressing each one of the sub-partitions;
- decompressing each one of the sub-partitions in parallel with at least an additional one of the sub-partitions;
- and
- when reading the randomly accessed data, reading only requested data within a respective one of the fixed-sized sub-partitions within a respective one of the compression blocks by the independent decompression of only the respective one of the compression blocks and the respective sub-partition holding the requested data.
A system for data compression using compression blocks and partitions in a computing environment, comprising:
- a processor device, operable in the computing storage environment, wherein the processor device:
- for randomly accessed data, creates a two dimensional divide of the compression blocks by slicing the compression blocks forming a first dimension, the first dimension compressing the compression blocks which are output as variable-sized partitions, and forming a second dimension by sub-partitioning each of the variable-sized partitions of the compression blocks into fixed-sized sub-partitions, wherein each one of the sub-partitions are compressed in separate compression streams;
- independently compresses each one of the sub-partitions;
- independently decompresses each one of the sub-partitions;
- decompresses each one of the sub-partitions in parallel with at least an additional one of the sub-partitions;
- and
- when reading the randomly accessed data, reads only requested data within a respective one of the fixed-sized sub-partitions within a respective one of the compression blocks by the independent decompression of only the respective one of the compression blocks and the respective sub-partition holding the requested data.
A computer program product for data compression using compression blocks and partitions in a computing environment by a processor device, the computer program product comprising a non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising:
- a first executable portion that, for randomly accessed data, creates a two dimensional divide of the compression blocks by slicing the compression blocks forming a first dimension, the first dimension compressing the compression blocks which are output as variable-sized partitions, and forming a second dimension by sub-partitioning each of the variable-sized partitions of the compression blocks into fixed-sized sub-partitions, wherein each one of the sub-partitions are compressed in separate compression streams;
- independently compresses each one of the sub-partitions;
- independently decompresses each one of the sub-partitions;
- decompresses each one of the sub-partitions in parallel with at least an additional one of the sub-partitions;
- and
- when reading the randomly accessed data, reads only requested data within a respective one of the fixed-sized sub-partitions within a respective one of the compression blocks by the independent decompression of only the respective one of the compression blocks and the respective sub-partition holding the requested data.
Dependencies are inferred from the claim text.