[
https://issues.apache.org/jira/browse/CASSANDRA-21642?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stefan Miklosovic updated CASSANDRA-21642:
------------------------------------------
Description:
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.
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
was:
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 table can be flushed with fast / none. In other words, the current
solution is global, applied to all tables, we can not be granular.
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
> 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
>
> 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.
> 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
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]