raft-engine的存储空间占用大小超过预期

谢谢你的回复!

我们注意到了相关的参数,并在主楼里展示了我们集群的相关参数。以下是单个节点的对应参数,全部参数见主楼。

±--------±------------------±----------------------------------------------------±-------+
| Type | Instance | Name | Value |
±--------±------------------±----------------------------------------------------±-------+
| tikv | 49.52.27.20:20162 | raftstore.raft-log-gc-count-limit | 10000 |
| tikv | 49.52.27.20:20162 | raftstore.raft-log-gc-size-limit | 200MiB |
| tikv | 49.52.27.20:20162 | raftstore.raft-log-gc-threshold | 50 |
| tikv | 49.52.27.20:20162 | raftstore.raft-log-gc-tick-interval | 3s |

正因相关参数的数值与我们观测到的实际大小存在巨大的偏差,引发我们提出了这个问题。

在文档中,raft-log-gc-size-limit描述为对残余的 Raft 日志大小的硬限制,其具体值在我们集群中为200MiB,但raft-engine中总的空间占用为36G,两者差异巨大。结合raft-log-gc-count-limit描述中的“3/4 Region 大小所能容纳的日志个数”和raft-log-gc-size-limit描述中的默认值"Region 大小的 3/4"。raft-log-gc-size-limit似乎是指全部文件的大小总和,而不是指单个日志文件的大小(如果是的话所观测现象是正常的,因为单个文件大小130MB,且文件数小于10000)。

因此,我们想知道具体raft-log-gc-size-limit是指整体的空间大小还是单个文件的大小。以及raft-engine目录的空间占用是怎么计算的,是raft-log-gc-size-limit,还是raft-log-gc-size-limit * raft-log-gc-count-limit,或者两者都不是?