#bitpacking #integer-compression #integer

bitpacking-plus

Wrappers of bitpacking with extra pack formats

2 unstable releases

0.2.0 Aug 13, 2023
0.1.0 Aug 6, 2023

#453 in Compression

30 downloads per month

MIT license

19KB
289 lines

Wrappers of bitpacking with extra pack formats

Crates.io docs.rs

This crate wraps crate bitpacking. It contains variant bitpacking formats, inspired by BPCells.

See also this article

Bitpacking format

The vanilla format

Same as behaviors in vanilla compression of bitpacking.

m1 format

Same as behaviors in vanilla compression of bitpacking, but with 1 subtracted from each value prior to compression.

d1 format

Same as behaviors in delta compression of bitpacking, which transforms the original input into the difference between consecutive values prior to bitpacking. Therefore, the original input block must be sorted.

d1z format

Similar to d1 format but with zigzag encoding applied after difference encoding, where $zigzag(x) = 2x$ if $x > 0$, while $x < 0$, $zigzag(x) = -2x - 1$. This is best for lists of close but not fully sorted runs of integers.

Dependencies

~150KB