Skip to content
Compressed Bloom Filters (Golomb-compressed sequences, with indices)
Haskell JavaScript Shell Ruby
Find file
Latest commit 01e2bd9 May 19, 2013 @lsb wip
Failed to load latest commit information.
GolombEncode.hs faster golomb encoding Sep 19, 2012
GolombQuery.hs use tail-recursive golomb decoder that avoids making a linked list of… Sep 18, 2012
GolombQuery.js safely pull firstQueryHash and firstPartialSum Sep 24, 2012
HashSequence.hs hash a line, modulo (lineCount * 1/falsePositiveRate) Sep 15, 2012
README.md
base-64-encode.hs base 64 encoder (to use with window.atob()) Sep 17, 2012
golomb-decode.hs wip May 19, 2013
golomb-encode.hs faster golomb encoding Sep 19, 2012
golomb-query.hs name change: binaryBits expresses how many bits the Rice encoding takes Sep 18, 2012
make-hash-sequences.hs hash a line, modulo (lineCount * 1/falsePositiveRate) Sep 15, 2012
make-hash-sequences.rb unfairly faster ruby implementation Sep 19, 2012
make-index.hs
mk-gcs.sh bug: set modulus after setting false positive Sep 27, 2012
pedagogicalGolombCode.hs

README.md

gcs

Golomb-compressed sequences (with indices) for large datasets

To create a golomb-compressed sequence, first install packages and compile code.

cabal install bytestring-show pure-md5

ghc --make -O2 make-hash-sequences.hs
ghc --make -O2 golomb-encode.hs
ghc --make -O2 make-index.hs
ghc --make -O2 base-64-encode.hs

And then, write one key per line on stdin to mk-gcs.sh, and mk-gcs.sh will write binary data to stdout, and will write a JSON object to stderr. (The JSON object makes sense to use in a browser, the binary data makes sense to use on the command line.)

Something went wrong with that request. Please try again.