SuperAPI AI 工具集

altinity-expert-clickhouse-part-log

通用与其它

查看项目

更新于 10-15 16:48

技能介绍

用途:从 system.part_log 回答“部件正在发生什么、速度多快、是否有失败”,按每分钟事件速率、行数与字节量、错误三个维度分析。若尚未确定连接方式、集群与时间窗口,先运行 altinity-expert-clickhouse-connection。

主要能力:checks.sql 含 11 项检查,包括 part_log 覆盖合理性、按分钟的部件活动时间线、每表 NewPart 速率、NewPart 与 MergeParts 平衡、合并时长分布、MutatePart 速率、未完成变更积压、DownloadPart/RemovePart/MovePart 尖峰以及非零错误的 part_log 行。除 part-log-07 读取 system.mutations 外,其余十项依赖 system.part_log;若该表不存在则跳过其余检查并报告未启用 part_log。reference.md 提供事件类型、部件生命周期与设置的背景说明。

使用方式:从技能目录读取查询包文件,逐条执行语句而非整文件;语句以 ; 结尾并带 -- @check <id> <title> 头部,保留 id 与结果对应。遵守 -- @requires:缺少指定表、需要 Keeper/ZooKeeper 而服务器没有、或版本条件不满足时跳过并记录原因。存在集群宏时保留 {cluster} 原样,否则按连接技能改写规则处理;其他 {placeholder} 需替换真实值或跳过。出错时记录检查 id 与错误首行后继续;仅对 UNKNOWN_IDENTIFIER 运行 DESCRIBE TABLE system.<table> 并剔除缺失列。severity 列即该行结论,直接采用不要重新评级。

判读:本包不计算严重级别,需按规则自行判定并说明所用规则。part-log-01 优先:若最早事件晚于请求窗口,说明 part_log 近期才启用或 TTL 过短,后续速率仅覆盖较短窗口。微批处理:单表每分钟超 60 个 NewPart 事件,或平均部件小于 1 MB 或小于 10,000 行,说明插入过小。NewPart 速率远高于 MergeParts 说明部件数增长、合并落后,最终会触发 TOO_MANY_PARTS。合并时长 p95 远高于 p50 或窗口内递增表示合并压力,结合字节量区分原因。MutatePart 风暴说明 ALTER UPDATE 或 ALTER DELETE 重写大量部件,频繁小变更通常应改用 ReplacingMergeTree、CollapsingMergeTree 或轻量删除。DownloadPart 尖峰说明副本通过网络获取部件而非本地合并。RemovePart 尖峰来自 TTL 清理、DROP/DETACH PARTITION、变更清理或合并后源部件移除,判定数据丢失前需与同期 MergeParts 关联。MovePart 尖峰表示存储策略移动或分层。part-log-11 非零错误行始终是发现项,需报告异常文本与计数,同一表重复错误应视为严重或更高级别。

限制:结论依赖 system.part_log 存在且保留窗口足够,本技能不替代后续专项技能;下一步可按情况加载 ingestion、merges、mutations、replication、storage、schema 或 logs 技能。全部资料未提供收费、价格与平台信息。