更新时间:2024-11-22 GMT+08:00
ClickHouse系统表日志过大时如何添加定期删除策略?
问题现象
客户使用ClickHouse,系统表产生的日志过大,一次性删除会耗费较长时间,客户可以添加定期删除策略,即添加TTL。
处理步骤
- MRS 3.3.0及之后版本,在Manager页面,选择“集群 > 服务 > ClickHouse> 配置 > 全部配置”,可以通过参数“query_log.ttl”和“trace_log.ttl”配置数据清理周期,默认为90天。
- MRS 3.3.0之前版本,在ClickHouse客户端给TTL的系统表执行如下语句:
alter table system.表名 modify TTL event_date + INTERVAL 保留天数 day;
- 该语句只是配置运行SQL节点的系统表的TTL,如果所有节点都需要配置,则需要到每个节点上都执行该语句,但不建议使用on cluster语句,避免ClickHouse一直运行下去。
- 上述语句建议在低峰期运行,由于数据量较大,这个操作可能会比较慢。
父主题: 组件配置类