Compress the given buffer and return the compressed data as a new buffer.
Compress the given buffer and return the compressed data as a new buffer.
Return the compressed data size if encoded with dictionary encoding.
Return the compressed data size if encoded with dictionary encoding. If the dictionary cardinality (i.e. the number of distinct elements) is bigger than 32K, we return an a really large number so that dictionary encoding does not get used on this column.
Return compression ratio, smaller scores imply higher compressibility.
Return compression ratio, smaller scores imply higher compressibility. Scores greater than 1.0 indicate that compressed data will take up more space than uncompressed data. This number is used to pick the compression algorithm to apply at runtime.
Collect a value so we can update the compression ratio for this compression algorithm.
Collect a value so we can update the compression ratio for this compression algorithm.
Tests whether the compression algorithm supports a specific column type.
Tests whether the compression algorithm supports a specific column type.
The uncompressed size of the input data.
The uncompressed size of the input data.
Dictionary encoding for columns with small cardinality. This algorithm encodes values into short integers (2 byte each). It can support up to 32k distinct values.