TiKV 中 raft-log-gc-size-limit 大于 region-split-size 会发生什么
What would happen raft-log-gc-size-limit is larger than region-split-size in TiKV
我有一个 TiKV 设置,它有一个 region-split-size
96MB,这是默认值,raft-log-gc-size-limit
是 144MB。对 TiKV 集群有什么影响。由于提到 raft-log-gc-size-limit
应该是 region-split-size
的 3/4。
你可能会浪费 space 来存储 raft 日志和浪费网络流量来恢复 Raft 状态。
一个Region由一个Raft group管理,当它的数据超过region-max-size
时,它会分裂,例如Region [a,e)可能分裂成几个Region [a,b), [b, c), [c,d), [d,e) 和 [a,b), [b,c), [c,d) 的大小都在 region-split-size
左右。所以 TiKV 假设快照的大小也在 region-split-size
左右。
过时的节点通过快照或 raft 日志恢复状态。筏日志总是首选。如果我们存储过多的 raft 日志 (> region-spilt-size
),可能会有两种结果:
- 浪费网络流量来恢复状态,
- 浪费 space 来存储 raft 日志,较旧的 raft 日志可能永远不会被提取和发送。
我有一个 TiKV 设置,它有一个 region-split-size
96MB,这是默认值,raft-log-gc-size-limit
是 144MB。对 TiKV 集群有什么影响。由于提到 raft-log-gc-size-limit
应该是 region-split-size
的 3/4。
你可能会浪费 space 来存储 raft 日志和浪费网络流量来恢复 Raft 状态。
一个Region由一个Raft group管理,当它的数据超过region-max-size
时,它会分裂,例如Region [a,e)可能分裂成几个Region [a,b), [b, c), [c,d), [d,e) 和 [a,b), [b,c), [c,d) 的大小都在 region-split-size
左右。所以 TiKV 假设快照的大小也在 region-split-size
左右。
过时的节点通过快照或 raft 日志恢复状态。筏日志总是首选。如果我们存储过多的 raft 日志 (> region-spilt-size
),可能会有两种结果:
- 浪费网络流量来恢复状态,
- 浪费 space 来存储 raft 日志,较旧的 raft 日志可能永远不会被提取和发送。