tencent cloud

TDSQL Boundless

调度规则与亲和性策略

PDF
聚焦模式
字号
最后更新时间: 2026-04-17 12:21:18
本文档介绍 TDSQL Boundless 的调度规则系统,包括可编排任务框架、K8s 语义策略接口以及隐式/显式亲和性配置。

可编排的任务执行框架

TDSQL Boundless 设计了一个基于执行计划的可编排任务框架:

可编排的任务执行框架


场景示例:将 table1 和 table2 调度到同一节点
1.
执行分裂:向 TDStore 下发"分裂 RG2"原子任务
2.
执行迁移:下发"将 Region3 从 Node2 迁移至 Node1"
3.
切主:下发"将相关 RG 的主副本切换"
4. 合并:下发"合并指定的 RG"

典型业务场景


典型业务场景:流水账单


场景
业务痛点
TDSQL Boundless 解决方案
流水、账单
历史数据占用高成本存储
内置策略自动冷热分层
金融多法人
监管要求数据物理隔离
细粒度拓扑感知的数据隔离策略
广告检索
跨表关联查询需数据放一起
数据拓扑感知自动调度

K8s 语义的策略接口系统


策略接口系统


基于数据拓扑感知能力,实现可扩展的符合 K8s 语义的策略接口系统:
策略示例:创建表时绑定 cross-3-idc 策略
CREATE TABLE table_1 USING DISTRIBUTION_POLICY cross-3-idc
含义
该表有一主两备3个副本
在 gz_1 - gz_5 可用区中分布
Leader 尽量不选择 gz_3 或 gz_5
优先确保 zone 级别的容灾能力

冷热数据分层


-- 创建带时间分区的流水表
CREATE TABLE table_1(id INT, trans_date DATETIME)
PARTITION BY RANGE (TO_DAYS(trans_date)) (
PARTITION p1 VALUES LESS THAN (TO_DAYS('2022-11-01')),
PARTITION p2 VALUES LESS THAN (TO_DAYS('2022-12-01')),
PARTITION p3 VALUES LESS THAN (TO_DAYS('2023-02-01')),
PARTITION p4 VALUES LESS THAN (TO_DAYS('2023-03-01'))
);

-- 绑定分区冷却策略
ALTER TABLE table_1
USING DISTRIBUTION_POLICY partition-cool-down
效果:3个月之前的子分区自动迁移至冷存节点,降副本,无需人工干预。

亲和性调度

隐式亲和性

对于分区规则相同的表,TDSQL Boundless 引入了分区级亲和性调度机制

隐式亲和性调度


-- 两张表采用相同的分区规则
CREATE TABLE t1(id INT PRIMARY KEY, f1 INT, f2 VARCHAR)
PARTITION BY HASH (f1) PARTITIONS 3;

CREATE TABLE t2(id INT PRIMARY KEY, f1 INT, f3 VARCHAR)
PARTITION BY HASH (f1) PARTITIONS 3;
效果
将关联分区(如 t1.p3 与 t2.p3)固定在同一节点
避免因扩容或负载均衡导致的数据分散
保障查询性能稳定

显式亲和性


显式亲和性配置


允许业务通过 SQL 语法主动配置表间的关联关系:
场景一:小表紧密关联
CREATE PARTITION POLICY IF NOT EXISTS pp1
调度效果:将两张表分配到同一个复制组(RG)中。
场景二:大表分区级亲和
CREATE PARTITION POLICY IF NOT EXISTS pp2
PARTITION BY HASH(INT) PARTITIONS
调度效果:将两张表相同规则的分区调度至同一 RG。

策略系统核心价值

价值
说明
通用标准
符合事实标准,key-op-values 规范对用户友好
语义可扩展
可根据不同业务需求扩展更多 PolicyOption
数据链路全解耦
调度引擎独立管控,计算/存储全解耦

业务价值案例

腾讯计费平台发票流水业务:
数据规模:30T(三副本),单表 80+ 亿行
写入峰值:1w/s
查询频率:平均300-400笔/s
原有痛点:需要方便、快速进行扩容
使用效果:在线水平扩容从月缩短至分钟级,业务无须感知

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈