Block compression of tables with repeated values
AssigneeSap SE
InventorsFranz Faerber, Guenter Radestock, Andrew Ross
Life of this patent
Estimating the term…
Abstract
Methods and apparatus, including computer program products, for block compression of tables with repeated values. In general, value identifiers representing a compressed column of data may be sorted to render repeated values contiguous, and block dictionaries may be generated. A block dictionary may be generated for each block of value identifiers. Each block dictionary may include a list of block identifiers, where each block identifier is associated with a value identifier and there is a block identifier for each unique value in a block. Blocks may have standard sizes and block dictionaries may be reused for multiple blocks.
Claims11
A computer program product, embodied in a non-transitory computer-readable storage medium, the computer program product being operable to cause at least one data processing apparatus to perform operations comprising:
- storing, in a delta buffer, change indications corresponding to changes to a column of data stored in a database table, wherein the delta buffer is stored separately from the column of data stored in the database table;
- asynchronously integrating the change indications stored in the delta buffer with the column of data stored in the database table by at least
- merging the change indications stored in the delta buffer with data stored in the column of data to produce merged data, and
- saving the merged data to the column of data, wherein the integrating is performed asynchronously with respect to receiving the change indications;
- performing block compression of at least the column of data, wherein the block compression is initiated when the column of data includes a value that is repeated more frequently than other values in the column of data;
- receiving a search request for at least a portion of the data stored in the column of data;
- and
- providing, in response to the search request, integrated search results comprising at least a portion of the data stored in the column of data and updated based on the change indications stored in the delta buffer.
A computer-implemented method comprising:
- storing, in a delta buffer, change indications corresponding to changes to a column of data stored in a database table, wherein the delta buffer is stored separately from the column of data stored in the database table;
- asynchronously integrating the change indications stored in the delta buffer with the column of data stored in the database table by at least
- merging the change indications stored in the delta buffer with data stored in the column of data to produce merged data, and
- saving the merged data to the column of data, wherein the integrating is performed asynchronously with respect to receiving the change indications;
- performing block compression of at least the column of data, wherein the block compression is initiated when the column of data includes a value that is repeated more frequently than other values in the column of data;
- receiving a search request for at least a portion of the data stored in the column of data;
- and
- providing, in response to the search request, integrated search results comprising at least a portion of the data stored in the column of data and updated based on the change indications stored in the delta buffer.
A system comprising:
- at least one programmable processor;
- and
- memory storing instructions that, when executed by the at least one programmable processor, cause the at least one programmable processor to perform operations comprising:
- storing, in a delta buffer, change indications corresponding to changes to a column of data stored in a database table, wherein the delta buffer is stored separately from the column of data stored in the database table;
- asynchronously integrating the change indications stored in the delta buffer with the column of data stored in the database table by at least
- merging the change indications stored in the delta buffer with data stored in the column of data to produce merged data, and
- saving the merged data to the column of data, wherein the integrating is performed asynchronously with respect to receiving the change indications;
- performing block compression of at least the column of data, wherein the block compression is initiated when the column of data includes a value that is repeated more frequently than other values in the column of data;
- receiving a search request for at least a portion of the data stored in the column of data;
- and
- providing, in response to the search request, integrated search results comprising at least a portion of the data stored in the column of data and updated based on the change indications stored in the delta buffer.
Dependencies are inferred from the claim text.