做 ClickHouse 的工具,扛 ClickHouse 的线上故障,然后把故障写下来。
2020 年起只做这一件事,场景集中在金融和信创 —— 环境封闭、合规优先、出事不能重启了事。
I build ClickHouse tooling, I run ClickHouse in production, and I write down what broke.
| 项目 | 是什么 | |
|---|---|---|
| ckman | ClickHouse 集群的部署、升级、扩缩容与监控平台。第一作者,2020 年至今 | |
| clickhouse_sinker | Kafka → ClickHouse 的高吞吐写入通道。主要维护者 | |
| ClickHouse | 上游内核与 Keeper,contributor(见下) | |
| clickhouse-go · ch-go | 官方 Go 驱动,contributor |
版本差异、生产排障、信创环境适配。都是自己踩过的,不转述。挑三篇:
ClickHouse 版本升级避坑清单 跨版本行为变更的持续记录。changelog 告诉你变了什么,这里告诉你怎么知道自己中招了。
126 万 znode 是怎么长出来的 26.2 和 26.3 两次默认值撞在一起,让 opt-in 的异步去重变成全局默认。从数字反常追到源码实锤,最后降了 91.6%。
metadata 明明在本地,为什么 ClickHouse 说 S3 上找不到 S3 不可达时的救援,以及一个广为流传的偏方跨三个大版本的失效史。
| #112711 | 26.3 LTS 的 text index tokenizer 跨版本兼容缺陷 —— 26.3 建的索引在 26.4 打不开,连 DROP INDEX 都执行不了。推动核心维护者次日实现并合入 #113061 |
| #88746 | clickhouse-keeper 开机自启。被标记 must-backport,已回移至多个稳定分支与 ClickHouse Cloud |
| #61969 | numbers / numbers_mt / zeros / zeros_mt 表函数的零参数变体 |
| #61622 | 清理 copyS3File 重复代码 |
| #112910 | 修正 26.3 changelog 与实际发布内容不符 |
| #60394 | 推动 ckman 收录进 ClickHouse 官方 GUI 工具文档 |
发明专利公开 CN120541047A,第一发明人 —— 海量小文件采集优化,把「监控全量」降为「监控活跃量」。

