tencent cloud

TDSQL Boundless

产品动态
产品简介
产品概述
应用场景
产品架构
实例类型
兼容性说明
自研内核
内核概述
内核版本更新动态
功能类特性
性能类特性
产品计费
计费概述
购买方式
价格详情
续费说明
欠费说明
退费说明
快速入门
创建实例
连接实例
用户指南
数据迁移
数据同步/订阅
实例管理
配置变更
参数配置
账号管理
安全组
备份与恢复
数据库审计
标签管理
实践教程
Online DDL 的技术演进与使用实践
锁机制解析与问题排查实践
数据智能调度及相关性能优化实践
TDSQL Boundless 选型指南与实践教程
开发指南
开发指南(MySQL 兼容模式)
开发指南(HBase 兼容模式)
性能调优
性能调优概述
SQL 调优
DDL 调优
性能白皮书
性能概述
TPC-C 测试
Sysbench 测试
API 文档
History
Introduction
API Category
Making API Requests
Instance APIs
Security Group APIs
Task APIs
Backup APIs
Rollback APIs
Parameter APIs
Database APIs
Data Types
Error Codes
通用参考
系统原理
SQL 参考
数据库参数说明
TPC-H 基准测试数据模型参考
错误码信息
安全与合规
常见问题
服务协议
服务等级协议
服务条款
隐私政策
数据处理和安全协议
联系我们
词汇表

副本迁移性能优化

PDF
聚焦模式
字号
最后更新时间: 2026-02-10 11:06:00

传统迁移流程


1. 数据提取阶段:从 Leader 的 LSM-Tree 中遍历提取特定 key range 的数据。数据可能分散在不同层级、多个 SST 文件;需要逐条扫描和筛选,IO 开销大。
2. 数据传输阶段:逐条发送 KV 数据到目标端,传输效率低,网络利用率差。
3. 数据写入阶段:目标端先写入 external SST,再 ingest 到 LSM-Tree。需要与本地 SST 文件聚合,产生额外压缩开销。
4. 副本删除阶段:从 LSM-Tree 中移除数据,需要遍历底层 SST 文件,IO 开销大。

优化方案:SST 文件边界对齐


在底层数据压缩(compaction)过程中,增加对 SST 文件和数据分片 Region 边界对齐的逻辑处理。
实现机制
在后台执行 compaction 过程时,系统会调用名为 SST partitioner 的模块。在 compaction 检测到文件较大时,按 Region 边界进行拆分,确保同一 SST 文件仅包含单一数据分片的数据,而不会将不同 region 的数据合并在一起。
如下图所示,L1层:100-200, 200-300, 300-400等范围清晰分离;L2/L3层:无数据跨越 Region 边界。
优化后的迁移流程
1.1 文件直接识别:无需遍历数据,直接确定 Region 对应的 SST 文件。
1.2 整文件传输:直接传输压缩后的 SST 文件到目标端。
1.3 直接 ingest:目标端无需复杂压缩,直接插入数据。
技术细节处理:迁移前先将 L0 层乱序数据 compaction 到 L1 层。由于 L0 层数据由 memtable 刷写而来,其数据量相对有限,压缩开销可接受。

性能提升

compaction 相关 IO 开销下降。
迁移、全量备份性能提升。
区间物理删除性能提升。
为批量导入(Bulk Load)功能提供了技术基础,实现了 SST 文件的高效传输和加载,显著提升了 TDStore 的数据迁移效率。
方案
速率
备注
stream RPC 传输 KV (优化前)
22.6M/s
每个 RepGroup 数据量20G
直接发送本地 SST (优化后)
455.1M/s

帮助和支持

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

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

文档反馈