[ 
https://issues.apache.org/jira/browse/CASSANDRA-21642?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stefan Miklosovic updated CASSANDRA-21642:
------------------------------------------
    Test and Documentation Plan: CI
                         Status: Patch Available  (was: In Progress)

> Consider the introduction of flush_compression CQL table parameter
> ------------------------------------------------------------------
>
>                 Key: CASSANDRA-21642
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-21642
>             Project: Apache Cassandra
>          Issue Type: New Feature
>          Components: Feature/Compression
>            Reporter: Stefan Miklosovic
>            Assignee: Stefan Miklosovic
>            Priority: Normal
>             Fix For: 7.x
>
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> In CASSANDRA-15379 we have introduced {{flush_compression}} configuration 
> parameter into cassandra.yaml by which an operator can say what compression 
> should be used upon flushing.
> While this is indeed a valuable contribution, currently it is not possible to 
> say that a particular table can be flushed with its table compressor while 
> all the rest of tables can be flushed with fast / none. In other words, the 
> current solution is global, applied to all tables, we can not be granular.
> Also, currently it is driven by a configuration property in cassandra.yaml. 
> That means that if we ever change our minds about how this should be 
> configured, we have to change that property and restart whole cluster which 
> is understandably not ideal.
> The proposal is about the introduction of a CQL table parameter, 
> {{flush_compression}} with values: auto, none, fast, table.
> {{auto}} means that it will fallback to cassandra.yaml values. 
> Example:
> {code}
> CREATE TABLE ks.tb WITH flush_compression = 'table' and compression = 
> {'class': 'ZstdCompressor' }
> {code}
> This means that table will be flushed with ZstdCompressor.
> {code}
> CREATE TABLE ks.tb WITH flush_compression = 'auto' and compression = 
> {'class': 'ZstdCompressor' }
> {code}
> This means that table will be flushed with whatever is in cassandra.yaml
> {{auto}} is default hence copying the current behavior.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to