ADAPTIVE DICTIONARY COMPRESSION/DECOMPRESSION FOR COLUMN-STORE DATABASES
First Claim
1. One or more tangible computer-readable media storing computer-executable instructions for causing a computing system programmed thereby to perform a method comprising:
- selecting one of multiple available dictionary compression variants to apply to a dictionary for a column of a table in a column-store database; and
applying the selected dictionary compression variant to the dictionary.
2 Assignments
0 Petitions
Accused Products
Abstract
Innovations for adaptive compression and decompression for dictionaries of a column-store database can reduce the amount of memory used for columns of the database, allowing a system to keep column data in memory for more columns, while delays for access operations remain acceptable. For example, dictionary compression variants use different compression techniques and implementation options. Some dictionary compression variants provide more aggressive compression (reduced memory consumption) but result in slower run-time performance. Other dictionary compression variants provide less aggressive compression (higher memory consumption) but support faster run-time performance. As another example, a compression manager can automatically select a dictionary compression variant for a given column in a column-store database. For different dictionary compression variants, the compression manager predicts run-time performance and compressed dictionary size, given the values of the column, and selects one of the dictionary compression variants.
105 Citations
20 Claims
-
1. One or more tangible computer-readable media storing computer-executable instructions for causing a computing system programmed thereby to perform a method comprising:
-
selecting one of multiple available dictionary compression variants to apply to a dictionary for a column of a table in a column-store database; and applying the selected dictionary compression variant to the dictionary. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. In a computing system that implements a compression manager, a method comprising:
-
with the computing system, predicting size of a compressed dictionary for a column of a table in a column-store database according to a compression model for a dictionary compression variant; and with the computing system, based at least in part on the predicted compressed dictionary size, applying the dictionary compression variant to the dictionary. - View Dependent Claims (19)
-
-
20. A computing system comprising:
-
an in-memory column-store database adapted to store one or more tables; a compression manager adapted to compress at least some columns of the one or more tables using domain encoding, wherein the compression manager is further adapted to; evaluate multiple available dictionary compression variants for a string dictionary for a given column of the at least some columns; select one of the multiple available dictionary compression variants to apply to the string dictionary for the given column; and apply the selected dictionary compression variant to the string dictionary.
-
Specification