docker容器clickhouse启动异常Suspiciously many broken parts to remove

最近经常碰到同一个问题, 部署的clickhouse服务时常启动异常, 推测是因为clickhouse在设备突然断电时一些数据持久化服务或者数据压缩服务未完全同步, 导致启动后加载过程中, 产生了异常数据碎片无法合并导致的。

这里先说下, 大家部署服务的时候, 切记要把里面的比如日志、配置文件等映射出来到宿主机, 不然改起来很麻烦, 特别是关键数据如果不映射, 到时候容器毁坏了, 数据就全丢了。映射的方法有两个, docker run -v或者在docker-compose.yml中添加volumes都可以。如果忘记映射, 可以使用docker cp container-name:path local-path的方法进行文件或者文件夹的复制, 然后再反过来cp回去就可以。

如果有映射日志, 可以直接查看日志文件, 如果没有映射, 可以通过上述方法cp日志文件出来查看(因为容器挂掉, 没办法直接进去看, 而且docker logs打印的不是clickhouse-server的日志), 如果看到Suspiciously many broken parts to remove的字样, 说明问题就出在这里了。

然后再说下上述问题解决办法, 可以在clickhouse的配置文件的conf.d中(前提时config.yml中include了conf.d文件夹)添加一个配置文件, 命名应该可以随意,但大众一般都采用语义性强的max_suspicious_broken_parts.xml作为配置区分, 其中内容如下:

XML 复制代码
<?xml version="1.0"?>
<yandex>
     <merge_tree>
         <max_suspicious_broken_parts>1000</max_suspicious_broken_parts>
     </merge_tree>
</yandex>

添加完成后, 再重启clickhouse服务, 即可恢复正常。

相关推荐
l1t3 小时前
DeepSeek总结的chdb-core v26.7.3发版说明
数据库·clickhouse·oracle
SelectDB技术团队2 天前
从 ClickHouse 迁移到 Doris:SQL 兼容、同步与验证清单
数据库·人工智能·sql·clickhouse·apache doris·selectdb·湖仓架构升级
java_logo4 天前
Docker 部署 ClickHouse Server:轻松搭建列式 OLAP 分析数据库平台
数据库·clickhouse·docker·私有化部署·olap·列式数据库·轩辕镜像
西风未眠8 天前
ClickHouse数据库引擎引起的数据丢失
数据库·clickhouse·故障
李兆龙的博客11 天前
从一到无穷大 #86:ClickHouse 收购 RunReveal——可观测性竞争进入宏观调控阶段
clickhouse
Gain_chance15 天前
大数据毕业设计实战|Data Insight Platform:用 FastAPI + ClickHouse 打造低门槛全链路数据洞察平台
大数据·数据库·clickhouse·毕业设计·fastapi
迷迭香yy18 天前
A股数据本地存储方案对比JSON、SQLite、ClickHouse、DuckDB怎么选 IG50免费开源股票数据API接口
clickhouse·sqlite·json
leisoo809718 天前
本地股票数据深度对比ClickHouse与Parquet存储方案 IG50免费开源股票数据API接口
clickhouse·开源
A.说学逗唱的Coke20 天前
【数据库专题】ClickHouse 深度实战:从列式存储原理到 PB 级海量日志与可观测性分析
数据库·clickhouse·硬件架构
吉甫作诵1 个月前
阿里云 ECS 安装 ClickHouse:密码配置、目录迁移与基础调优
大数据·clickhouse