Yuqi Yan created CASSANDRA-21592:
------------------------------------
Summary: Adaptive compaction throttler
Key: CASSANDRA-21592
URL: https://issues.apache.org/jira/browse/CASSANDRA-21592
Project: Apache Cassandra
Issue Type: Improvement
Components: Local/Compaction
Reporter: Yuqi Yan
Assignee: Yuqi Yan
Currently we're using compaction_throughput as a static throughput for the
compaction throttler. Operator tends to set a larger throughput to avoid
compaction lagging, but at the same time it could generate spike in CPU load.
The idea here for the adaptive compaction throttler is simple: a thread will
observe the past 1 minute (or longer) window, looking at the percentage of the
`acquire` request that is throttled (time waited > 0) - with a set of low/high
watermarks, e.g. (0.3,0.7) to decide whether on next step should we tune the
rate down/up/stay.
This is a simple solution but works ok in our current setup. Some additional
signals to be considered could be
* sizeAcquire in last observation window
* pending L0 SSTables for the entire node
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]