ClickHouse加速TTL操作调优
ClickHouse触发TTL的时候,对CPU和内存会存在较大消耗和占用。
登录FusionInsight Manager界面,选择“集群 > ClickHouse > 配置 > 全部配置 > ClickHouseServer > 自定义 > clickhouse-config-customize”,添加如下配置,保存配置,重启服务。
配置项 |
参考值 |
作用 |
---|---|---|
merge_tree.max_replicated_merges_with_ttl_in_queue |
CPU核数一半 |
在ReplicatedMergeTree队列中允许同时使用TTL合并部件的任务数。 |
merge_tree.max_number_of_merges_with_ttl_in_pool |
CPU核数 |
在ReplicatedMergeTree队列中允许TTL合并部件的线程池。 |
- 当集群写入压力较大,不建议修改此配置。需要给常规Merge留出空闲线程,避免“Too manyparts parts”。
- 对于已存在的大表(数据量超亿级别),不要使用修改或新设置TTL的方式来实现数据老化能力,推荐使用定时任务“alter table table_name on cluster default_cluster drop partition partition_name”来实现。