thinkaurelius/titan — pull request #405 by mamccr (2013-09-30 20:34:16+00:00)
Title: Make Compression Configurable

Making Cassandra compression algorithm configurable via two new configuration properties (storage.sstable-compressor and storage.compression-chunk-length). This is another solution to Issue #397 (I didn't even notice the pull request for that until I went to submit this one). I think this pull request addresses the problem with a little more flexibility. The other pull request is just a "turn off compression" switch, while this one lets you specify a different class to do the compression. So you could use org.apache.cassandra.io.compress.DeflateCompressor for simple zip compression (compresses more, but slower) or you could write your own compressor implementing org.apache.cassandra.io.compress.ICompressor which used something like the snappy library that doesn't have native components (https://github.com/dain/snappy/). Or I guess you could write a no-op one if you really, really don't want compression. Otherwise, these two pull requests are nearly identical (I was actually able to clean mine up a bit after reviewing the other one).