Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add mintso config parameters (#18997) #19139

Merged
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions tiflash/tiflash-configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -249,6 +249,15 @@ delta_index_cache_size = 0
## 从 v7.4.0 引入,表示是否开启 TiFlash 资源管控功能。当设置为 true 时,TiFlash 会使用 Pipeline Model 执行模型。
enable_resource_control = true

## 从 v6.0.0 引入,用于 MinTSO 调度器,表示一个资源组中最多可使用的线程数量,默认值为 5000。关于 MinTSO 调度器,详见 https://docs.pingcap.com/zh/tidb/dev/tiflash-mintso-scheduler
task_scheduler_thread_soft_limit = 5000

## 从 v6.0.0 引入,用于 MinTSO 调度器,表示全局最多可使用的线程数量,默认值为 10000。关于 MinTSO 调度器,详见 https://docs.pingcap.com/zh/tidb/dev/tiflash-mintso-scheduler
task_scheduler_thread_hard_limit = 10000

## 从 v6.4.0 引入,用于 MinTSO 调度器,表示一个 TiFlash 实例中最多可同时运行的查询数量,默认值为 0,即两倍的 vCPU 数量。关于 MinTSO 调度器,详见 https://docs.pingcap.com/zh/tidb/dev/tiflash-mintso-scheduler
task_scheduler_active_set_soft_limit = 0
lilin90 marked this conversation as resolved.
Show resolved Hide resolved

## 安全相关配置,从 v4.0.5 开始生效
[security]
## 从 v5.0 引入,控制是否开启日志脱敏。可选值为 `true`、`false`、`"on"`、`"off"` 和 `"marker"`。其中,`"on"`、`"off"` 和 `"marker"` 从 v8.2.0 开始支持。
Expand Down
4 changes: 4 additions & 0 deletions tiflash/tiflash-mintso-scheduler.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,3 +60,7 @@ MinTSO 调度器的目标是在控制系统线程数的同时,确保系统中
![TiFlash MinTSO Scheduler v2](/media/tiflash/tiflash_mintso_v2.png)

通过引入 soft limit 与 hard limit,MinTSO 调度器在控制系统线程数的同时,有效地避免了系统死锁。不过对于高并发场景,可能会出现大多数查询都只有部分 MPP Task 被调度的情况。只有部分 MPP Task 被调度的查询无法正常执行,从而导致系统执行效率低下。为了避免这种情况,TiFlash 在查询层面为 MinTSO 调度器引入了一个限制,即 active_set_soft_limit,该限制要求系统最多只有 active_set_soft_limit 个查询的 MPP Task 可以参与调度;对于其它的查询,其 MPP Task 不参与调度,只有等当前查询结束之后,新的查询才能参与调度。该限制只是一个 soft limit,因为对于 MinTSO 查询来说,其所有 MPP Task 在系统线程数不超过 hard limit 时都可以直接被调度。

## 另请参阅

- [TiFlash 配置参数](/tiflash/tiflash-configuration.md):了解 MinTSO 调度器的相关配置。