Skip to main content
这些设置可在 system.merge_tree_settings 中查看,且由 ClickHouse 源代码自动生成。

max_bytes_to_merge_at_max_space_in_pool

在资源充足的情况下,可合并为一个 part 的最大总 parts 大小 (以字节为单位) 。这大致对应于自动后台合并所能生成的最大 part 大小。 (0 表示禁用合并) 可能的值:
  • 任意非负整数。
合并调度器会定期分析各个分区中 parts 的大小和数量;如果池中有足够的空闲资源,就会启动后台合并。合并会持续进行,直到源 parts 的总大小超过 max_bytes_to_merge_at_max_space_in_pool OPTIMIZE FINAL 发起的合并会忽略 max_bytes_to_merge_at_max_space_in_pool (仅考虑可用的磁盘空间) 。

max_bytes_to_merge_at_min_space_in_pool

在后台池可用资源最少时,可合并为一个 part 的最大总 part 大小 (以字节为单位) 。 可能的值:
  • 任意正整数。
max_bytes_to_merge_at_min_space_in_pool 定义了在可用磁盘空间不足 (在池中) 的情况下,仍可参与合并的 parts 的最大总大小。 这对于减少小 part 的数量以及降低出现 Too many parts 错误的概率是必要的。 合并会按待合并 parts 总大小的两倍预留磁盘空间。 因此,在磁盘可用空间较少时,可能会出现这样的情况: 虽然仍有可用空间,但这部分空间已经被正在进行的大型合并预留, 导致其他合并无法启动,而小 part 的数量会随着每次插入不断增加。
最后修改于 2026年7月23日