cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Kjellman (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-11051) Make LZ4 Compression Level Configurable
Date Fri, 08 Apr 2016 02:29:25 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-11051?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15231516#comment-15231516
] 

Michael Kjellman commented on CASSANDRA-11051:
----------------------------------------------

+1 Looks great! Thanks [~krummas] (sorry for the delay again... stupid spam filter keeps triggering
on your Jira updates)

> Make LZ4 Compression Level Configurable 
> ----------------------------------------
>
>                 Key: CASSANDRA-11051
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11051
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Compaction
>            Reporter: Michael Kjellman
>            Assignee: Michael Kjellman
>         Attachments: lz4_2.2.patch
>
>
> We'd like to make the LZ4 Compressor implementation configurable on a per column family
basis. Testing has shown a ~4% reduction in file size with the higher compression LZ4 implementation
vs the standard compressor we currently use instantiated by the default constructor. The attached
patch adds the following optional parameters 'lz4_compressor_type' and 'lz4_high_compressor_level'
to the LZ4Compressor. If none of the new optional parameters are specified, the Compressor
will use the same defaults Cassandra has always had for LZ4.
> New LZ4Compressor Optional Parameters:
>   * lz4_compressor_type can currently be either 'high' (uses LZ4HCCompressor) or 'fast'
(uses LZ4Compressor)
>   * lz4_high_compressor_level can be set between 1 and 17. Not specifying a compressor
level while specifying lz4_compressor_type as 'high' will use a default level of 9 (as picked
by the LZ4 library as the "default").
> Currently, we use the default LZ4 compressor constructor. This change would just expose
the level (and implementation to use) to the user via the schema. There are many potential
cases where users may find that the tradeoff in additional CPU and memory usage is worth the
on-disk space savings.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message