场景目标
联查 MergeTree parts、查询内存、复制队列和备份恢复,区分本地表、分片与副本,完成有界诊断和隔离验收。 所有输出应绑定真实采样窗口和业务样本,交接未关闭问题与下次检查时间。
大数据运维 · 高级
联查 MergeTree parts、查询内存、复制队列和备份恢复,区分本地表、分片与副本,完成有界诊断和隔离验收。
联查 MergeTree parts、查询内存、复制队列和备份恢复,区分本地表、分片与副本,完成有界诊断和隔离验收。 所有输出应绑定真实采样窗口和业务样本,交接未关闭问题与下次检查时间。
具备目标库表、system 表的受限查询权限,记录集群、分片、复制路径、Keeper 配置和查询 ID。准备明确的时间范围、容量基线和隔离恢复目标;系统表通常为本节点视图,多节点核验需逐节点或经批准的集群查询。
联查 MergeTree parts、查询内存、复制队列和备份恢复,区分本地表、分片与副本,完成有界诊断和隔离验收。
点击组件,在图下方查看职责;连线编号对应流向解读。小屏可横向滚动,或直接展开文字说明。
本地表执行当前分片查询;跨分片聚合由入口查询计划协调。
示意同一复制组间获取数据 parts,不意味着所有写入必须先经过这个节点。
本地副本使用协调服务维护复制元数据。
其他副本独立维护复制进度和协调会话。
按经过核实的备份范围持久保存可恢复来源。
以开源自建 ClickHouse 的 MergeTree / ReplicatedMergeTree 为主线,执行前 SELECT version() 并对照对应版本字段。ClickHouse Cloud 使用不同的存储与运维机制,应采用服务文档。
不自动执行 OPTIMIZE FINAL、删除 parts、重建 Keeper 路径或生产 RESTORE。分片分摊数据,副本复制数据;Distributed 表不凭自身保存底层全部数据。
图解是本站基于官方资料整理的逻辑参考;实施前仍需核对实际部署版本、组件支持范围与变更审批。
以开源自建 ClickHouse 的 MergeTree / ReplicatedMergeTree 为主线,执行前 SELECT version() 并对照对应版本字段。ClickHouse Cloud 使用不同的存储与运维机制,应采用服务文档。
不自动执行 OPTIMIZE FINAL、删除 parts、重建 Keeper 路径或生产 RESTORE。分片分摊数据,副本复制数据;Distributed 表不凭自身保存底层全部数据。
以实际拓扑、业务样本与持续进度共同验收,记录时间窗口、变更前后证据及恢复缺口。本文是待环境验证的参考流程,预计时间只覆盖首轮诊断与小范围试点,不包括大规模重建或真实生产故障演练。
记录节点版本和表定义,区分 Distributed 入口、各分片本地表与同分片副本。核查 ORDER BY、分区表达式和业务去重要求;MergeTree 主键不是唯一约束。
SELECT version();
SHOW CREATE TABLE REPLACE_WITH_DB.REPLACE_WITH_TABLE;每个查询入口能映射到持久表、分片和副本,排序键语义明确。
拓扑不明时停止表或 Keeper 变更,不把同名表自动认作同一复制组。
针对一个确认的表逐节点查询,只读观察只读状态、会话过期和复制队列趋势。非复制表不会在 system.replicas 出现;大集群先限制库表,避免扫描所有协调路径。
SELECT database, table, is_readonly, is_session_expired, queue_size, absolute_delay
FROM system.replicas
WHERE database = 'REPLACE_WITH_DB' AND table = 'REPLACE_WITH_TABLE'
LIMIT 10;复制延迟、队列增长与 Keeper 连接可以关联,结果注明采样节点。
出现多副本不可读时冻结节点维护,不强制恢复或删除协调元数据。
按目标分区统计 active parts、行数和字节,对照小批写入、后台 merges、磁盘空间与 I/O。区分待合并数据和未完成 mutation;高分区基数和频繁微批可共同增加开销。
压力能追溯到具体表分区、写入模式或后台任务,而非仅记录全局 parts 数。
停止扩大量写入和批量 mutation,禁止手工删除 parts 或默认 OPTIMIZE FINAL。
通过限定时间与查询 ID 的 query_log 对照峰值内存、读取行数和异常;对计划看主键、分区裁剪与 Join。分布式查询需考虑各节点内存和执行片段,不把单节点记录相加当作同一时刻峰值。
一条失败或慢查询能落到扫描、Join、排序或聚合,解释节点间差异。
诊断查询影响服务时缩小时间范围,先保存当前证据而非提高全局内存上限。
在新样本表验证排序键、分区策略或批量写入,再对比行数、业务结果与索引裁剪;ReplacingMergeTree 的去重发生在合并中,不能将其当作同步唯一约束。
代表性查询和写入成本改善,更新与重复数据语义符合业务预期。
样本不符则保留旧表与旧入口;重建表和迁移输出不能通过改回参数自动撤销。
清点需备份的本地表、表定义、权限、字典及外部依赖,确认备份目的地与保留策略。备份任务完成后检查清单与恢复所需配置,副本与 Keeper 不代替独立备份。
能指出具体备份 ID、完成状态、对象范围和未覆盖依赖。
任务失败或范围不全时停止删除旧备份,保护最近可恢复来源。
按同版本或已确认兼容矩阵恢复到隔离数据库或集群,核对复制路径不会加入生产组。检查表定义、分区、业务键和样本聚合,记录恢复耗时和时间边界。
目标数据可查询,权限符合预期,未连接生产复制组或改动生产路由。
恢复失败保留日志与备份,清理只针对已确认的隔离目标,不重置源集群。
持续跟踪 parts、合并、复制队列、磁盘与慢查询,记录阈值依据和责任人。TTL 生效依赖后台处理,不能用到期时间推定空间已经释放;保留恢复演练结果和下一次检查窗口。
容量和延迟趋势有解释,副本与备份分别验收,待观察项可追踪。
趋势继续恶化则停止扩量与清理,优先保证健康副本和可恢复来源。