MAPREDUCE服务 MRS-ClickHouse数据表分区过多调优:问题排查步骤
问题排查步骤
- 磁盘或其他存储介质问题导致merge过慢或者中止。
登录Manager页面,检查是否存在磁盘容量不足或其他磁盘告警,如果存在,请按照告警指导处理。
如果是磁盘容量不足,也可以联系客户删除部分过期数据,释放空间,快速恢复业务。
- Zookeeper异常导致merge无法正常执行。
登录Manager页面,检查ZooKeeper是否存在服务不可用、ClickHouse服务在ZooKeeper的数量配额使用率超过阈值等相关告警,如果存在,请按照告警指导处理。
- 执行如下SQL排查是否存在副本同步队列任务积压:
select FQDN() as node,type,count() from clusterAllReplicas(default_cluster, system.replication_queue) group by node,type;
如果存在积压,请查看副本队列中的任务是否报错,并根据报错信息处理。
- 执行如下SQL排查是否存在节点间表结构不一致。
select FQDN(), create_table_query from clusterAllReplicas(default_cluster,system.tables) where name = '${table_name}' group by FQDN(),create_table_query;
如果存在,请将不一致的表结构修改一致。
- 执行如下SQL排查是否存在mutation任务异常:
select FQDN(), database, table, mutation_id, create_time, command from clusterAllReplicas(default_cluster, system.mutations) where is_done = '0' order by create_time asc;
如果mutation任务正常,等待mutation任务完成,如果mutation任务异常,清理异常的mutation任务。
- 业务写入压力过大导致merge速度小于insert速度。
可以用以下SQL语句检查报错节点最近一小时的写入条数和频次:
select tables,written_rows,count() from system.query_log where type='QueryFinish' and query_start_time between (toUnixTimestamp(now()) - 3600) AND toUnixTimestamp(now()) and query_kind = 'Insert' group by tables,written_rows order by written_rows limit 10;
业务上建议一次写入一个分区,写入频率不要太快,不要小批量数据的插入,适当增大每次插入的时间间隔。
- 如果没有触发Merge,或者Merge较慢,需要调整参数加快Merge。
加速Merge,需要调整如下参数,请参考加速Merge操作:
配置项
参考值
max_threads
CPU核数*2
background_pool_size
CPU核数
merge_max_block_size
8192的整数倍,根据CPU内存资源大小调整
cleanup_delay_period
适当小于默认值 30
- GaussDB数据库参数调优_GaussDB版本_高斯数据库参数调优
- MapReduce服务_什么是MapReduce服务_什么是HBase
- 文档数据库服务DDS性能调优_MongoDB性能调优_华为云
- GaussDB性能怎么调_GaussDB性能调优_高斯数据库性能怎么调-华为云
- GaussDB性能_性能统计_高斯数据库性能-华为云
- GaussDB引擎_华为云GaussDB优势_高斯数据库引擎_华为云
- GaussDB时序_时序引擎_高斯数据库时序-华为云
- GaussDB性能_Gaussdb数据库性能_高斯数据库性能-华为云
- GaussDB性能怎么调_华为gaussdb_gaussdb性能_gaussdb学习
- GaussDB递归_层次递归查询函数_高斯数据库递归-华为云