PD 调度同时触发 Region 迁移 + 副本变更,两个调度任务的资源抢占与优先级管控机制?
副本修复优先级高于 Region 迁移;同 Region 互斥不会并发执行,两类调度分开参数限流,资源不足时均衡任务暂缓。
1 个赞
迁移升级建议先在小规模环境做充分的兼容性测试,特别是SQL语法、自增主键、事务隔离级别这几个方面。如果是分库分表迁移,要注意全局唯一ID的生成方式,推荐用 AUTO_RANDOM 替代自增主键。
副本故障修复 > Region 均衡迁移;两套调度独立限速、共享 TiKV 快照 IO 资源,靠双层限流 + Operator 互斥规避抢占雪崩。
副本变更:ReplicaChecker 生成 AddPeer/RemovePeer(故障宕机、副本数目不达标、机房标签不满足)Region 迁移:BalanceRegion 生成 MovePeer(AddLearner→Promote→RemovePeer,数据均衡搬迁)
1 个赞
在 TiDB 集群中,PD 负责调度 Region 的迁移和副本的变更,以优化性能、负载均衡和故障恢复。当同时触发 Region 迁移和副本变更时,PD 的调度系统会考虑资源抢占和优先级管控机制来处理这些任务。
单个 Region 不能同时执行迁移 + 副本增减,先完成高优副本任务
PD 通过store-limit限制单 TiKV 并发 Operator,拆分两类任务的带宽 / IO 资源
高优副本任务优先入队执行,迁移任务空闲时段调度。
副本修复(ReplicaChecker)>均衡迁移(Balance),故障缺副本优先处理,同 Region 两类任务互斥无法并发。
改为 SI 后性能通常下降 10%~30%,高并发写场景降幅更大。SI 适合金融对账类业务,可规避幻读、保证数据一致性