cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Albert P Tobey (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-9946) use ioprio_set on compaction threads by default instead of manually throttling
Date Mon, 03 Aug 2015 06:22:05 GMT


Albert P Tobey commented on CASSANDRA-9946:

Here's a script for pinning compaction to cores and ionice in one go:

Comment out the 'taskset' line to mess with ionice in isolation.

FWIW I think it's possible to tune up CFQ to be acceptable. There isn't a lot of existing
advice on the internet about how to do it, but it's doable. I've seen some references in various
Redhat low-latency guides but have yet to try it out. Even if many users choose deadline/noop
for peak throughput, others may prefer the performance tradeoff of CFQ if there is a payback
of more predictable/smooth performance.

That's not to mention the large number of setups that never tweak the disk scheduler at all.
Setting compaction IO to idle class will benefit some folks and doesn't hurt those on noop/deadline.

> use ioprio_set on compaction threads by default instead of manually throttling
> ------------------------------------------------------------------------------
>                 Key: CASSANDRA-9946
>                 URL:
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Core
>            Reporter: Jonathan Ellis
>            Assignee: Ariel Weisberg
>             Fix For: 3.x
> Compaction throttling works as designed, but it has two drawbacks:
> * it requires manual tuning to choose the "right" value for a given machine
> * it does not allow compaction to "burst" above its limit if there is additional i/o
capacity available while there are less application requests to serve
> Using ioprio_set instead solves both of these problems.

This message was sent by Atlassian JIRA

View raw message