From 7e366c3cdcd2772c80b2620c41ccf05f75ff449e Mon Sep 17 00:00:00 2001 From: tonyxuqqi Date: Wed, 13 Mar 2024 21:34:13 -0700 Subject: [PATCH 01/15] titan_doc_8.0 Signed-off-by: tonyxuqqi --- dynamic-config.md | 3 +++ storage-engine/titan-configuration.md | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/dynamic-config.md b/dynamic-config.md index 6db3b0a33d3f..be8355add281 100644 --- a/dynamic-config.md +++ b/dynamic-config.md @@ -206,6 +206,9 @@ show warnings; | {db-name}.{cf-name}.soft-pending-compaction-bytes-limit | pending compaction bytes 的软限制 | | {db-name}.{cf-name}.hard-pending-compaction-bytes-limit | pending compaction bytes 的硬限制 | | {db-name}.{cf-name}.titan.blob-run-mode | 处理 blob 文件的模式 | +| {db-name}.{cf-name}.titan.min-blob-size | 数据存Titan的阈值 | +| {db-name}.{cf-name}.titan.blob-file-compression | Titan数据文件的压缩算法 | +| {db-name}.{cf-name}.titan.discardable-ratio | Titan数据文件GC的垃圾数据比例阈值 | | server.grpc-memory-pool-quota | gRPC 可使用的内存大小限制 | | server.max-grpc-send-msg-len | gRPC 可发送的最大消息长度 | | server.raft-msg-max-batch-size | 单个 gRPC 消息可包含的最大 Raft 消息个数 | diff --git a/storage-engine/titan-configuration.md b/storage-engine/titan-configuration.md index aa358eb11aee..ce899e77128f 100644 --- a/storage-engine/titan-configuration.md +++ b/storage-engine/titan-configuration.md @@ -150,9 +150,9 @@ level-merge = false discardable-ratio = 1.0 ``` - > **注意:** + > **警告:** > - > 在磁盘空间不足以同时保持 Titan 和 RocksDB 数据时,应该使用 [`discardable-ratio`](/tikv-configuration-file.md#discardable-ratio) 的默认值 `0.5`。一般来说,如果磁盘可用空间小于 50% 时,推荐使用默认值。因为当 `discardable-ratio = 1.0` 时,RocksDB 数据一方面在不断增加,同时 Titan 原有的 blob 文件回收需要该文件所有数据都迁移至 RocksDB 才会发生,这个过程会比较缓慢。如果磁盘空间足够大,设置 `discardable-ratio = 1.0` 可以减小 compaction 过程中 Blob 文件自身的 GC,从而节省带宽。 + > 在磁盘空间不足以同时保持 Titan 和 RocksDB 数据时,应该使用 [`discardable-ratio`](/tikv-configuration-file.md#discardable-ratio) 的默认值 `0.5`。一般来说,如果磁盘可用空间小于 50% 时,推荐使用默认值。因为当 `discardable-ratio = 1.0` 时,RocksDB 数据一方面在不断增加,同时 Titan 原有的 blob 文件回收需要该文件所有数据都迁移至 RocksDB 才会发生,这个过程会比较缓慢。如果磁盘空间足够大,设置 `discardable-ratio = 1.0` 可以减小 compaction 过程中 Blob 文件自身的 GC,从而节省带宽。如果磁盘空间不足时强行手动做tikv-ctl compact cluster,可能会导致整个集群无可用空间从而无法写入。 2. (可选)使用 `tikv-ctl` 执行全量数据整理 (Compaction)。这一步骤将消耗大量 I/O 和 CPU 资源。 From e52ed01f95007fb2b6f26a4fe6e2b6e7dd30e325 Mon Sep 17 00:00:00 2001 From: tonyxuqqi Date: Thu, 14 Mar 2024 11:55:50 -0700 Subject: [PATCH 02/15] update Signed-off-by: tonyxuqqi --- storage-engine/titan-configuration.md | 3 +++ tikv-configuration-file.md | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/storage-engine/titan-configuration.md b/storage-engine/titan-configuration.md index ce899e77128f..b06a2bd64358 100644 --- a/storage-engine/titan-configuration.md +++ b/storage-engine/titan-configuration.md @@ -107,6 +107,9 @@ Titan 对 RocksDB 兼容,也就是说,使用 RocksDB 存储引擎的现有 T 通过调整 [`rate-bytes-per-sec`](/tikv-configuration-file.md#rate-bytes-per-sec),你可以限制 RocksDB compaction 的 I/O 速率,从而在高流量时减少对前台读写性能的影响。 +### `shared-blob-cache` v8.0引入 +启用Blob文件和Block文件的共享缓存,默认值为True。Block文件具有更高的优先级。该配置在优先满足Block Cache之后将剩余的缓存用于Blob文件。 + ### Titan 配置文件示例 下面是一个 Titan 配置文件的样例,更多的参数说明,请参考 [TiKV 配置文件描述](/tikv-configuration-file.md)。你可以使用 TiUP [修改配置参数](/maintain-tidb-using-tiup.md#修改配置参数),也可以通过[在 Kubernetes 中配置 TiDB 集群](https://docs.pingcap.com/zh/tidb-in-kubernetes/stable/configure-a-tidb-cluster)修改配置参数。 diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index 10e21bfd26ab..e1a5868c03d2 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -1664,6 +1664,11 @@ rocksdb defaultcf titan 相关的配置项。 + 推荐值:建议在数据库稳定运行后,根据监控把 RocksDB block cache (`storage.block-cache.capacity`) 设置为能刚好维持接近 95% 以上的 Block Cache 命中率,`blob-cache-size` 设置为 `内存大小 * 50% 再减去 block cache 的大小`。这是为了保证 block cache 足够缓存整个 RocksDB 的前提下,blob cache 尽量大。但 Blob cache 的值不应该设置过大,否则会导致 block cache 命中率大幅下降。 + 单位:KB|MB|GB +### `shared-blob-cache` TiDB v8.0引入 + ++ Blob文件和RocksDB Block文件共享Cache ++ 默认值: True。启用Blob文件和RocksDB Block文件的共享缓存,Block文件具有更高的优先级。该配置在优先满足Block Cache之后将剩余的缓存用于Blob文件。 + ### `min-gc-batch-size` + 做一次 GC 所要求的最低 Blob 文件大小总和。 From b938ad01e47326c0529ba23034df8c84d83267a1 Mon Sep 17 00:00:00 2001 From: tonyxuqqi Date: Thu, 14 Mar 2024 18:44:46 -0700 Subject: [PATCH 03/15] Update storage-engine/titan-configuration.md Co-authored-by: Connor --- storage-engine/titan-configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage-engine/titan-configuration.md b/storage-engine/titan-configuration.md index b06a2bd64358..fe36af6750df 100644 --- a/storage-engine/titan-configuration.md +++ b/storage-engine/titan-configuration.md @@ -155,7 +155,7 @@ level-merge = false > **警告:** > - > 在磁盘空间不足以同时保持 Titan 和 RocksDB 数据时,应该使用 [`discardable-ratio`](/tikv-configuration-file.md#discardable-ratio) 的默认值 `0.5`。一般来说,如果磁盘可用空间小于 50% 时,推荐使用默认值。因为当 `discardable-ratio = 1.0` 时,RocksDB 数据一方面在不断增加,同时 Titan 原有的 blob 文件回收需要该文件所有数据都迁移至 RocksDB 才会发生,这个过程会比较缓慢。如果磁盘空间足够大,设置 `discardable-ratio = 1.0` 可以减小 compaction 过程中 Blob 文件自身的 GC,从而节省带宽。如果磁盘空间不足时强行手动做tikv-ctl compact cluster,可能会导致整个集群无可用空间从而无法写入。 + > 在磁盘空间不足以同时保持 Titan 和 RocksDB 数据时,应该使用 [`discardable-ratio`](/tikv-configuration-file.md#discardable-ratio) 的默认值 `0.5`。一般来说,如果磁盘可用空间小于 50% 时,推荐使用默认值。因为当 `discardable-ratio = 1.0` 时,RocksDB 数据一方面在不断增加,同时 Titan 原有的 blob 文件回收需要该文件所有数据都迁移至 RocksDB 才会发生,这个过程会比较缓慢。如果磁盘空间足够大,设置 `discardable-ratio = 1.0` 可以减小 compaction 过程中 Blob 文件自身的 GC,从而节省带宽。如果磁盘空间不足时强行手动做 tikv-ctl compact cluster,可能会导致整个集群无可用空间从而无法写入。 2. (可选)使用 `tikv-ctl` 执行全量数据整理 (Compaction)。这一步骤将消耗大量 I/O 和 CPU 资源。 From 3142128d9309462a5a60c78d4c68ae80e676a454 Mon Sep 17 00:00:00 2001 From: tonyxuqqi Date: Fri, 15 Mar 2024 13:55:38 -0700 Subject: [PATCH 04/15] Update storage-engine/titan-configuration.md Co-authored-by: Grace Cai --- storage-engine/titan-configuration.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/storage-engine/titan-configuration.md b/storage-engine/titan-configuration.md index fe36af6750df..ef8a854ccb70 100644 --- a/storage-engine/titan-configuration.md +++ b/storage-engine/titan-configuration.md @@ -107,7 +107,8 @@ Titan 对 RocksDB 兼容,也就是说,使用 RocksDB 存储引擎的现有 T 通过调整 [`rate-bytes-per-sec`](/tikv-configuration-file.md#rate-bytes-per-sec),你可以限制 RocksDB compaction 的 I/O 速率,从而在高流量时减少对前台读写性能的影响。 -### `shared-blob-cache` v8.0引入 +### `shared-blob-cache`(从 v8.0.0 版本开始引入) + 启用Blob文件和Block文件的共享缓存,默认值为True。Block文件具有更高的优先级。该配置在优先满足Block Cache之后将剩余的缓存用于Blob文件。 ### Titan 配置文件示例 From 445b048a6e10a8beb31c69c0efb95acfce2ada90 Mon Sep 17 00:00:00 2001 From: tonyxuqqi Date: Fri, 15 Mar 2024 13:55:48 -0700 Subject: [PATCH 05/15] Update storage-engine/titan-configuration.md Co-authored-by: Grace Cai --- storage-engine/titan-configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage-engine/titan-configuration.md b/storage-engine/titan-configuration.md index ef8a854ccb70..54a418cb2157 100644 --- a/storage-engine/titan-configuration.md +++ b/storage-engine/titan-configuration.md @@ -109,7 +109,7 @@ Titan 对 RocksDB 兼容,也就是说,使用 RocksDB 存储引擎的现有 T ### `shared-blob-cache`(从 v8.0.0 版本开始引入) -启用Blob文件和Block文件的共享缓存,默认值为True。Block文件具有更高的优先级。该配置在优先满足Block Cache之后将剩余的缓存用于Blob文件。 +你可以通过 [`shared-blob-cache`](/tikv-configuration-file.md#shared-blob-cache-tidb-从-v800-版本开始引入) 控制是否启用 Titan Blob 文件和 RocksDB Block 文件的共享缓存,默认值为 `true`。当开启共享缓存时,Block 文件具有更高的优先级,TiKV 将优先满足 Block 文件的缓存需求,然后将剩余的缓存用于 Blob 文件。 ### Titan 配置文件示例 From ee71b11634176e13853fc3b981a475638e4b8bbd Mon Sep 17 00:00:00 2001 From: tonyxuqqi Date: Fri, 15 Mar 2024 13:55:57 -0700 Subject: [PATCH 06/15] Update storage-engine/titan-configuration.md Co-authored-by: Grace Cai --- storage-engine/titan-configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage-engine/titan-configuration.md b/storage-engine/titan-configuration.md index 54a418cb2157..123d8fe1022f 100644 --- a/storage-engine/titan-configuration.md +++ b/storage-engine/titan-configuration.md @@ -156,7 +156,7 @@ level-merge = false > **警告:** > - > 在磁盘空间不足以同时保持 Titan 和 RocksDB 数据时,应该使用 [`discardable-ratio`](/tikv-configuration-file.md#discardable-ratio) 的默认值 `0.5`。一般来说,如果磁盘可用空间小于 50% 时,推荐使用默认值。因为当 `discardable-ratio = 1.0` 时,RocksDB 数据一方面在不断增加,同时 Titan 原有的 blob 文件回收需要该文件所有数据都迁移至 RocksDB 才会发生,这个过程会比较缓慢。如果磁盘空间足够大,设置 `discardable-ratio = 1.0` 可以减小 compaction 过程中 Blob 文件自身的 GC,从而节省带宽。如果磁盘空间不足时强行手动做 tikv-ctl compact cluster,可能会导致整个集群无可用空间从而无法写入。 + > 在磁盘空间不足以同时保持 Titan 和 RocksDB 数据时,应该使用 [`discardable-ratio`](/tikv-configuration-file.md#discardable-ratio) 的默认值 `0.5`。一般来说,如果磁盘可用空间小于 50% 时,推荐使用默认值。因为当 `discardable-ratio = 1.0` 时,RocksDB 数据一方面在不断增加,同时 Titan 原有的 blob 文件回收需要该文件所有数据都迁移至 RocksDB 才会发生,这个过程会比较缓慢。如果磁盘空间足够大,设置 `discardable-ratio = 1.0` 可以减小 compaction 过程中 Blob 文件自身的 GC,从而节省带宽。如果在磁盘空间不足时强行执行 `tikv-ctl compact cluster`,可能会导致整个集群无可用空间从而无法写入数据。 2. (可选)使用 `tikv-ctl` 执行全量数据整理 (Compaction)。这一步骤将消耗大量 I/O 和 CPU 资源。 From b748d53b61427b74f9960f995129dedbd636ed9d Mon Sep 17 00:00:00 2001 From: tonyxuqqi Date: Fri, 15 Mar 2024 13:56:14 -0700 Subject: [PATCH 07/15] Update dynamic-config.md Co-authored-by: Grace Cai --- dynamic-config.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dynamic-config.md b/dynamic-config.md index be8355add281..0c633fdc298d 100644 --- a/dynamic-config.md +++ b/dynamic-config.md @@ -206,9 +206,9 @@ show warnings; | {db-name}.{cf-name}.soft-pending-compaction-bytes-limit | pending compaction bytes 的软限制 | | {db-name}.{cf-name}.hard-pending-compaction-bytes-limit | pending compaction bytes 的硬限制 | | {db-name}.{cf-name}.titan.blob-run-mode | 处理 blob 文件的模式 | -| {db-name}.{cf-name}.titan.min-blob-size | 数据存Titan的阈值 | -| {db-name}.{cf-name}.titan.blob-file-compression | Titan数据文件的压缩算法 | -| {db-name}.{cf-name}.titan.discardable-ratio | Titan数据文件GC的垃圾数据比例阈值 | +| {db-name}.{cf-name}.titan.min-blob-size | 数据存储在 Titan 的阈值,当数据的 value 达到该阈值时将存储在 Titan 的 Blob 文件中 | +| {db-name}.{cf-name}.titan.blob-file-compression | Titan 的 Blob 文件所使用的压缩算法 | +| {db-name}.{cf-name}.titan.discardable-ratio | Titan 数据文件 GC 的垃圾数据比例阈值,当一个 Blob 文件中无用数据的比例超过该阈值时将会触发 Titan GC | | server.grpc-memory-pool-quota | gRPC 可使用的内存大小限制 | | server.max-grpc-send-msg-len | gRPC 可发送的最大消息长度 | | server.raft-msg-max-batch-size | 单个 gRPC 消息可包含的最大 Raft 消息个数 | From d1a64794765c86e92f3b5dbcc97bdd6374b12064 Mon Sep 17 00:00:00 2001 From: tonyxuqqi Date: Fri, 15 Mar 2024 13:56:23 -0700 Subject: [PATCH 08/15] Update tikv-configuration-file.md Co-authored-by: Grace Cai --- tikv-configuration-file.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index e1a5868c03d2..a776d078971c 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -1666,8 +1666,8 @@ rocksdb defaultcf titan 相关的配置项。 ### `shared-blob-cache` TiDB v8.0引入 -+ Blob文件和RocksDB Block文件共享Cache -+ 默认值: True。启用Blob文件和RocksDB Block文件的共享缓存,Block文件具有更高的优先级。该配置在优先满足Block Cache之后将剩余的缓存用于Blob文件。 ++ 是否启用 Titan Blob 文件和 RocksDB Block 文件的共享缓存 ++ 默认值:`true`。当开启共享缓存时,Block 文件具有更高的优先级,TiKV 将优先满足 Block 文件的缓存需求,然后将剩余的缓存用于 Blob 文件。 ### `min-gc-batch-size` From f0048c7fb262ebeea23b3d163154e52e894e6003 Mon Sep 17 00:00:00 2001 From: tonyxuqqi Date: Fri, 15 Mar 2024 13:56:29 -0700 Subject: [PATCH 09/15] Update tikv-configuration-file.md Co-authored-by: Grace Cai --- tikv-configuration-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index a776d078971c..f5e7bb387396 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -1664,7 +1664,7 @@ rocksdb defaultcf titan 相关的配置项。 + 推荐值:建议在数据库稳定运行后,根据监控把 RocksDB block cache (`storage.block-cache.capacity`) 设置为能刚好维持接近 95% 以上的 Block Cache 命中率,`blob-cache-size` 设置为 `内存大小 * 50% 再减去 block cache 的大小`。这是为了保证 block cache 足够缓存整个 RocksDB 的前提下,blob cache 尽量大。但 Blob cache 的值不应该设置过大,否则会导致 block cache 命中率大幅下降。 + 单位:KB|MB|GB -### `shared-blob-cache` TiDB v8.0引入 +### `shared-blob-cache`(从 v8.0.0 版本开始引入) + 是否启用 Titan Blob 文件和 RocksDB Block 文件的共享缓存 + 默认值:`true`。当开启共享缓存时,Block 文件具有更高的优先级,TiKV 将优先满足 Block 文件的缓存需求,然后将剩余的缓存用于 Blob 文件。 From bf46fa10ecf8e01a8198eafb8a8f849615ec59f2 Mon Sep 17 00:00:00 2001 From: tonyxuqqi Date: Wed, 20 Mar 2024 17:32:43 -0700 Subject: [PATCH 10/15] update Signed-off-by: tonyxuqqi --- storage-engine/titan-configuration.md | 1 - tikv-configuration-file.md | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/storage-engine/titan-configuration.md b/storage-engine/titan-configuration.md index 123d8fe1022f..6894ec4d7d95 100644 --- a/storage-engine/titan-configuration.md +++ b/storage-engine/titan-configuration.md @@ -127,7 +127,6 @@ max-background-gc = 1 min-blob-size = "32KB" blob-file-compression = "zstd" zstd-dict-size = "16KB" -blob-cache-size = "0GB" discardable-ratio = 0.5 blob-run-mode = "normal" level-merge = false diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index f5e7bb387396..3e5facef152b 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -1661,7 +1661,7 @@ rocksdb defaultcf titan 相关的配置项。 + Blob 文件的 cache 大小。 + 默认值:0GB + 最小值:0 -+ 推荐值:建议在数据库稳定运行后,根据监控把 RocksDB block cache (`storage.block-cache.capacity`) 设置为能刚好维持接近 95% 以上的 Block Cache 命中率,`blob-cache-size` 设置为 `内存大小 * 50% 再减去 block cache 的大小`。这是为了保证 block cache 足够缓存整个 RocksDB 的前提下,blob cache 尽量大。但 Blob cache 的值不应该设置过大,否则会导致 block cache 命中率大幅下降。 ++ 推荐值:0。从v8.0.0 之后引入了`shared-blob-cache`,无需单独设置`blob-cache-size`。只有当`shared-blob-cache`没有打开时`blob-cache-size`设置才能生效。 + 单位:KB|MB|GB ### `shared-blob-cache`(从 v8.0.0 版本开始引入) From 7752403754fb27ee5b73123c57500f1c53d85907 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 21 Mar 2024 08:56:50 +0800 Subject: [PATCH 11/15] Update titan-configuration.md --- storage-engine/titan-configuration.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/storage-engine/titan-configuration.md b/storage-engine/titan-configuration.md index 6894ec4d7d95..903ccad599c9 100644 --- a/storage-engine/titan-configuration.md +++ b/storage-engine/titan-configuration.md @@ -155,10 +155,14 @@ level-merge = false > **警告:** > - > 在磁盘空间不足以同时保持 Titan 和 RocksDB 数据时,应该使用 [`discardable-ratio`](/tikv-configuration-file.md#discardable-ratio) 的默认值 `0.5`。一般来说,如果磁盘可用空间小于 50% 时,推荐使用默认值。因为当 `discardable-ratio = 1.0` 时,RocksDB 数据一方面在不断增加,同时 Titan 原有的 blob 文件回收需要该文件所有数据都迁移至 RocksDB 才会发生,这个过程会比较缓慢。如果磁盘空间足够大,设置 `discardable-ratio = 1.0` 可以减小 compaction 过程中 Blob 文件自身的 GC,从而节省带宽。如果在磁盘空间不足时强行执行 `tikv-ctl compact cluster`,可能会导致整个集群无可用空间从而无法写入数据。 + > 在磁盘空间不足以同时保持 Titan 和 RocksDB 数据时,应该使用 [`discardable-ratio`](/tikv-configuration-file.md#discardable-ratio) 的默认值 `0.5`。一般来说,如果磁盘可用空间小于 50% 时,推荐使用默认值。因为当 `discardable-ratio = 1.0` 时,RocksDB 数据一方面在不断增加,同时 Titan 原有的 blob 文件回收需要该文件所有数据都迁移至 RocksDB 才会发生,这个过程会比较缓慢。如果磁盘空间足够大,设置 `discardable-ratio = 1.0` 可以减小 compaction 过程中 Blob 文件自身的 GC,从而节省带宽。 2. (可选)使用 `tikv-ctl` 执行全量数据整理 (Compaction)。这一步骤将消耗大量 I/O 和 CPU 资源。 + > **警告:** + > + > 如果在磁盘空间不足时执行以下命令,可能会导致整个集群无可用空间从而无法写入数据。 + ```bash tikv-ctl --pd compact-cluster --bottommost force ``` From c8ac619d6e1ce6474b54bae7282b15c674d480d9 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 21 Mar 2024 08:57:04 +0800 Subject: [PATCH 12/15] refine descriptions --- tikv-configuration-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index 3e5facef152b..8045ceca9a4d 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -1661,7 +1661,7 @@ rocksdb defaultcf titan 相关的配置项。 + Blob 文件的 cache 大小。 + 默认值:0GB + 最小值:0 -+ 推荐值:0。从v8.0.0 之后引入了`shared-blob-cache`,无需单独设置`blob-cache-size`。只有当`shared-blob-cache`没有打开时`blob-cache-size`设置才能生效。 ++ 推荐值:0。从 v8.0.0 开始,TiKV 引入了 `shared-blob-cache` 配置项并默认开启,因此无需再单独设置 `blob-cache-size`。只有当 `shared-blob-cache` 设置为 `false` 时, `blob-cache-size` 的设置才能生效。 + 单位:KB|MB|GB ### `shared-blob-cache`(从 v8.0.0 版本开始引入) From 1f0693ec7d224966e0da56df985dd4b165934426 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 21 Mar 2024 08:58:57 +0800 Subject: [PATCH 13/15] Update tikv-configuration-file.md --- tikv-configuration-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index 8045ceca9a4d..015b7fe7a9bc 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -1661,7 +1661,7 @@ rocksdb defaultcf titan 相关的配置项。 + Blob 文件的 cache 大小。 + 默认值:0GB + 最小值:0 -+ 推荐值:0。从 v8.0.0 开始,TiKV 引入了 `shared-blob-cache` 配置项并默认开启,因此无需再单独设置 `blob-cache-size`。只有当 `shared-blob-cache` 设置为 `false` 时, `blob-cache-size` 的设置才能生效。 ++ 推荐值:0。从 v8.0.0 开始,TiKV 引入了 `shared-blob-cache` 配置项并默认开启,因此无需再单独设置 `blob-cache-size`。只有当 `shared-blob-cache` 设置为 `false` 时,`blob-cache-size` 的设置才生效。 + 单位:KB|MB|GB ### `shared-blob-cache`(从 v8.0.0 版本开始引入) From 2193079f133478c49ba9a3cc0bd3cb79f93f1a2a Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Thu, 21 Mar 2024 08:59:34 +0800 Subject: [PATCH 14/15] Update storage-engine/titan-configuration.md --- storage-engine/titan-configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage-engine/titan-configuration.md b/storage-engine/titan-configuration.md index 903ccad599c9..335a33a2d487 100644 --- a/storage-engine/titan-configuration.md +++ b/storage-engine/titan-configuration.md @@ -153,7 +153,7 @@ level-merge = false discardable-ratio = 1.0 ``` - > **警告:** + > **注意:** > > 在磁盘空间不足以同时保持 Titan 和 RocksDB 数据时,应该使用 [`discardable-ratio`](/tikv-configuration-file.md#discardable-ratio) 的默认值 `0.5`。一般来说,如果磁盘可用空间小于 50% 时,推荐使用默认值。因为当 `discardable-ratio = 1.0` 时,RocksDB 数据一方面在不断增加,同时 Titan 原有的 blob 文件回收需要该文件所有数据都迁移至 RocksDB 才会发生,这个过程会比较缓慢。如果磁盘空间足够大,设置 `discardable-ratio = 1.0` 可以减小 compaction 过程中 Blob 文件自身的 GC,从而节省带宽。 From 49e7262a6f9db504fd7f99fb63f492a52c583559 Mon Sep 17 00:00:00 2001 From: Grace Cai Date: Fri, 22 Mar 2024 14:29:04 +0800 Subject: [PATCH 15/15] fix a broken link --- storage-engine/titan-configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage-engine/titan-configuration.md b/storage-engine/titan-configuration.md index 335a33a2d487..1245b9c7a052 100644 --- a/storage-engine/titan-configuration.md +++ b/storage-engine/titan-configuration.md @@ -109,7 +109,7 @@ Titan 对 RocksDB 兼容,也就是说,使用 RocksDB 存储引擎的现有 T ### `shared-blob-cache`(从 v8.0.0 版本开始引入) -你可以通过 [`shared-blob-cache`](/tikv-configuration-file.md#shared-blob-cache-tidb-从-v800-版本开始引入) 控制是否启用 Titan Blob 文件和 RocksDB Block 文件的共享缓存,默认值为 `true`。当开启共享缓存时,Block 文件具有更高的优先级,TiKV 将优先满足 Block 文件的缓存需求,然后将剩余的缓存用于 Blob 文件。 +你可以通过 [`shared-blob-cache`](/tikv-configuration-file.md#shared-blob-cache从-v800-版本开始引入) 控制是否启用 Titan Blob 文件和 RocksDB Block 文件的共享缓存,默认值为 `true`。当开启共享缓存时,Block 文件具有更高的优先级,TiKV 将优先满足 Block 文件的缓存需求,然后将剩余的缓存用于 Blob 文件。 ### Titan 配置文件示例