负载均衡

最近更新时间:2025-12-24 12:03:44

我的收藏

负载均衡与数据亲和性协同调度机制

TDSQL Boundless 的管控调度引擎(MC)实现了负载均衡与数据亲和性协同调度机制,在保证业务性能的同时确保集群资源的高效利用。

1. 初始分布策略
均匀分布原则:创建表时按节点数自动打散数据分布
Leader 均衡:默认每个节点分布一个 Primary RG Leader,确保读写负载分散
副本均衡:表的一级/二级分区均匀分布所有可用节点
2. 动态扩容感知
随着资源占用紧张横向扩容节点数,破坏了分布均衡性,MC 自动执行以下操作:
计算新增节点的容量状态
重新评估数据分布均衡性
迁移部分数据分片至新节点
维持亲和性规则的同时优化整体分布
3. 持续优化机制
随着业务发展,当数据增删导致资源占用变化时,MC 定期重新计算数据分布。
渐进式优化:通过多次小规模迁移逐步优化分布,避免大规模数据搬迁对业务造成影响。
4. 极端情况下数据倾斜过高,调度引擎依然能够分裂表数据并进行副本搬迁。

热点检测与智能调度机制

TDSQL Boundless 的管控调度引擎(MC)实现了智能化的热点检测与负载均衡系统,通过多维度监控和智能算法有效解决分布式数据库中的热点问题。

1. 实时数据上报
节点心跳:Node 周期性上报 Heartbeat,包含节点基本信息、Region 级别的读写流量统计。
资源采集:MC 周期性采集节点资源信息,包含 CPU 使用率、内存占用情况、I/O 负载指标
2. 多维度负载状态由 MC 维护 Multi-TopN 记录,从 Byte (数据量负载)、Key (访问键值分布)、Query (查询频率与复杂度)维度监控节点负载。
3. 智能调度算法
基于 MovingAverage 记录历史均值,避免冲击负载产生冗余调度。
计算各个节点的热度得分,选择最佳均匀分布,并产生调度任务。