pingcap / pingcap/tidb

Reduce the `burstable=true` impact on others resource group

Open
#54,554 0 comments 1 reaction 0 assignees View on GitHub
type/enhancement
Dominant language
Go
Stars
40.5k
Forks
6.2k
PR merge metrics
PR metrics pending

Description

## Background
Experiment. Suppose if these are the resource groups.
Rg_1 = 800K. (custom bulk load)
Rg_2 = 100K (sysbench oltp_read_write)
Rg_3 = 300K. (ycsb workload F)
Rg_4 = 5K, (ycsb workload F)
Rg_5 = 150K. (ycsb workload F)
Rg_6 = 200K (ycsb workload F).
If we flipped the Rg_4 to Bursteable; consumed RU of that starts going up to 551K, but the consumed RU of Rg_1 dips by about 100K. (that is reversible by flipping back bursteable)

## Requests

Actually, the current `burstable` like no limit in the token limiter. we need to make it more predictable. like automatically setting the burstable value rather than burst with no limit. like setting the API with:

```
curl -X PUT 127.0.0.1:2379/resource-manager/api/v1/config/group -H 'Content-Type: application/json' -d '{"name":"rg1","mode": 1,"r_u_settings":{"r_u":{"settings":{"fill_rate":2000"burst_limit":60000}, "tokens": 0}},"priority":16}'
```
the burstable RU is 60000, rather than `-1`(no limit) when setting `burstable=true`

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.