@@ -225,6 +225,17 @@ TiKV 配置文件比命令行参数支持更多的选项。你可以在 [etc/con
225
225
+ 单位:KiB|MiB|GiB
226
226
+ 最小值:1KiB
227
227
228
+ ### ` snap-min-ingest-size ` <span class =" version-mark " >从 v8.1.2 版本开始引入</span >
229
+
230
+ + 指定 TiKV 在处理 snapshot 时是否采用 ingest 方式的最小阈值。
231
+
232
+ + 当 snapshot 大小超过该阈值时,TiKV 会采用 ingest 方式,即将 snapshot 中的 SST 文件导入 RocksDB。这种方式适合处理大文件,导入速度更快。
233
+ + 当 snapshot 大小不超过该阈值时,TiKV 会采用直接写入方式,即将每一条数据逐条写入 RocksDB。这种方式在处理小文件时更高效。
234
+
235
+ + 默认值:2MiB
236
+ + 单位:KiB|MiB|GiB
237
+ + 最小值:0
238
+
228
239
### ` enable-request-batch `
229
240
230
241
+ 控制是否开启批处理请求。
@@ -516,6 +527,11 @@ RocksDB 多个 CF 之间共享 block cache 的配置选项。
516
527
517
528
+ 单位:KiB|MiB|GiB
518
529
530
+ ### ` low-pri-pool-ratio ` <span class =" version-mark " >从 v8.0.0 版本开始引入</span >
531
+
532
+ + 控制 Titan 组件使用的 block cache 占整个 block cache 的比例。
533
+ + 默认值:0.2
534
+
519
535
## storage.flow-control
520
536
521
537
在 scheduler 层进行流量控制代替 RocksDB 的 write stall 机制,可以避免 write stall 机制卡住 Raftstore 或 Apply 线程导致的次生问题。本节介绍 TiKV 流量控制机制相关的配置项。
@@ -817,6 +833,17 @@ raftstore 相关的配置项。
817
833
+ 默认值:10s
818
834
+ 最小值:0
819
835
836
+ ### ` pd-report-min-resolved-ts-interval ` <span class =" version-mark " >从 v7.6.0 版本开始引入</span >
837
+
838
+ > ** 注意:**
839
+ >
840
+ > 该配置项由 [ ` report-min-resolved-ts-interval ` ] ( https://docs.pingcap.com/zh/tidb/v7.5/tikv-configuration-file/#report-min-resolved-ts-interval-从-v600-版本开始引入 ) 更名而来。从 v7.6.0 开始,` report-min-resolved-ts-interval ` 不再生效。
841
+
842
+ + 设置 TiKV 向 PD leader 上报 Resolved TS 的最小时间间隔。设置为 ` 0 ` 表示禁用该功能。
843
+ + 默认值:` "1s" ` ,即最小正值。在 v6.3.0 之前,默认值为 ` "0s" ` 。
844
+ + 最小值:0
845
+ + 单位:秒
846
+
820
847
### ` snap-mgr-gc-tick-interval `
821
848
822
849
+ 触发回收过期 snapshot 文件的时间间隔,0 表示不启用。
@@ -1017,6 +1044,7 @@ raftstore 相关的配置项。
1017
1044
+ 默认值:1MiB
1018
1045
+ 最小值:0
1019
1046
1047
+ <<<<<<< HEAD
1020
1048
### ` report-min-resolved-ts-interval ` <span class =" version-mark " >从 v6.0.0 版本开始引入</span >
1021
1049
1022
1050
+ 设置 PD leader 收到 Resolved TS 的间隔时间。如果该值设置为 ` 0 ` ,表示禁用该功能。
@@ -1025,6 +1053,9 @@ raftstore 相关的配置项。
1025
1053
+ 单位:秒
1026
1054
1027
1055
### ` evict-cache-on-memory-ratio ` <span class =" version-mark " >从 v7.5.0 版本开始引入</span >
1056
+ =======
1057
+ ### ` evict-cache-on-memory-ratio ` <span class =" version-mark " >从 v7.5.0 版本开始引入</span >
1058
+ >>>>>>> 85792a59cb (tikv: recorrect the settings of some configs and supplement missing annotations for several configs. (#20261 ))
1028
1059
1029
1060
+ 当 TiKV 的内存使用超过系统可用内存的 90%,并且 Raft 缓存条目占用的内存超过已使用内存 * ` evict-cache-on-memory-ratio ` 时,TiKV 会逐出 Raft 缓存条目。
1030
1061
+ 设置为 ` 0 ` 表示禁用该功能。
@@ -1376,7 +1407,7 @@ Titan 相关的配置项。
1376
1407
### ` max-background-gc `
1377
1408
1378
1409
+ Titan 后台 GC 的线程个数,当从 ** TiKV Details** > ** Thread CPU** > ** RocksDB CPU** 监控中观察到 Titan GC 线程长期处于满负荷状态时,应该考虑增加 Titan GC 线程池大小。
1379
- + 默认值:4
1410
+ + 默认值:1。在 v8.0.0 之前,默认值为 4。
1380
1411
+ 最小值:1
1381
1412
1382
1413
## rocksdb.defaultcf | rocksdb.writecf | rocksdb.lockcf
@@ -2260,6 +2291,12 @@ Raft Engine 相关的配置项。
2260
2291
+ 默认值:6,即最多并发执行 6 个任务
2261
2292
+ 注意:` incremental-scan-concurrency ` 需要大于等于 ` incremental-scan-threads ` ,否则 TiKV 启动会报错。
2262
2293
2294
+ ### ` incremental-scan-concurrency-limit ` <span class =" version-mark " >从 v7.6.0 版本开始引入</span >
2295
+
2296
+ + 待执行的增量扫描历史数据任务的最大队列长度。当待执行任务数超过此限制时,新任务将被拒绝。
2297
+ + 默认值:10000,即最多可允许创建 10000 个任务等待执行。
2298
+ + 注意:` incremental-scan-concurrency-limit ` 需要大于等于 [ ` incremental-scan-concurrency ` ] ( #incremental-scan-concurrency ) ,否则 TiKV 会使用 ` incremental-scan-concurrency ` 覆盖此配置。
2299
+
2263
2300
## resolved-ts
2264
2301
2265
2302
用于维护 Resolved TS 以服务 Stale Read 请求的相关配置项。
@@ -2468,3 +2505,46 @@ Raft Engine 相关的配置项。
2468
2505
2469
2506
+ 设置 TiKV 堆内存分析每次采样的数据量,以 2 的指数次幂向上取整。
2470
2507
+ 默认值:512KiB
2508
+ <<<<<<< HEAD
2509
+ =======
2510
+
2511
+ ### ` enable-thread-exclusive-arena ` <span class =" version-mark " >从 v8.1.0 版本开始引入</span >
2512
+
2513
+ + 控制是否展示 TiKV 线程级别的内存分配情况,以跟踪 TiKV 各个线程的内存使用。
2514
+ + 默认值:true
2515
+
2516
+ ## in-memory-engine <span class =" version-mark " >从 v8.5.0 版本开始引入</span >
2517
+
2518
+ TiKV MVCC 内存引擎 (In-Memory Engine) 在 TiKV 存储层相关的配置项。
2519
+
2520
+ ### ` enable ` <span class =" version-mark " >从 v8.5.0 版本开始引入</span >
2521
+
2522
+ > ** 注意:**
2523
+ >
2524
+ > 该配置项支持在配置文件中进行配置,但不支持通过 SQL 语句查询。
2525
+
2526
+ + 是否开启内存引擎以加速多版本查询。关于内存引擎的详细信息,参见 [ TiKV MVCC 内存引擎] ( /tikv-in-memory-engine.md ) 。
2527
+ + 默认值:false(即关闭内存引擎)
2528
+ + 建议 TiKV 节点至少配置 8 GiB 内存,推荐配置 32 GiB 或更多内存以获得更佳性能。
2529
+ + 如果 TiKV 可用内存过低,即使将该配置项设置为 ` true ` ,内存引擎也不会被启用。此时,你可以在 TiKV 的日志文件中查找与 ` "in-memory engine is disabled because" ` 相关的日志信息,以判断为何内存引擎未能启用。
2530
+
2531
+ ### ` capacity ` <span class =" version-mark " >从 v8.5.0 版本开始引入</span >
2532
+
2533
+ > ** 注意:**
2534
+ >
2535
+ > + 开启内存引擎后,` block-cache.capacity ` 会自动减少 10%。
2536
+ > + 手动配置 ` capacity ` 时,` block-cache.capacity ` 不会自动减少,需手动调整为合适的值以避免 OOM。
2537
+
2538
+ + 配置内存引擎可使用的内存大小。最大值为 5 GiB。你可以手动调整配置以使用更多内存。
2539
+ + 默认值:系统内存的 10%。
2540
+
2541
+ ### ` gc-run-interval ` <span class =" version-mark " >从 v8.5.0 版本开始引入</span >
2542
+
2543
+ + 控制内存引擎 GC 缓存 MVCC 版本的时间间隔。调小该参数可加快 GC 频率,减少 MVCC 记录,但会增加 GC 的 CPU 消耗,以及增加内存引擎失效的概率。
2544
+ + 默认值:3m
2545
+
2546
+ ### ` mvcc-amplification-threshold ` <span class =" version-mark " >从 v8.5.0 版本开始引入</span >
2547
+
2548
+ + 控制内存引擎选取加载 Region 时 MVCC 读放大的阈值。默认为 ` 10 ` ,表示在某个 Region 中读一行记录需要处理的 MVCC 版本数量超过 10 个时,有可能会被加载到内存引擎中。
2549
+ + 默认值:10
2550
+ >>>>>>> 85792a59cb (tikv: recorrect the settings of some configs and supplement missing annotations for several configs. (#20261 ))
0 commit comments