性能测试
本文档汇总了 Apache Doris CCR(Cross Cluster Replication,跨集群复制)在默认配置下的同步性能基准。测试覆盖全量同步、增量同步和 Flink 实时写入同步三种典型场景,可用于容量规划与 SLA 评估的参考依据。
若您面临高网络延迟或高吞吐量写入等场景,可参考 操作手册 进行参数调优。
适用场景
| 场景 | 关注指标 | 对应章节 |
|---|---|---|
| 评估 CCR 是否满足业务 SLA | 同步延迟、首次同步耗时 | 全量同步性能测试、增量同步性能测试 |
| 实时数据复制能力评估 | 实时写入 lag | Flink 同步性能测试 |
| 跨集群迁移容量规划 | 全量初始化耗时 | 全量同步性能测试 |
| 调优前的基线参考 | 默认配置下的吞吐与延迟 | 全部测试结论 |
测试环境
测试数据集
- 数据集:TPC-H 1T
测试集群配置
上游与下游集群规格保持一致:
| 配置项 | 上游配置 | 下游配置 |
|---|---|---|
| FE | 2 核 16 GB | 2 核 16 GB |
| BE | 3 个节点,16 核 64 GB,每节点 3*500 GB | 3 个节点,16 核 64 GB,每节点 3*500 GB |
增量同步性能测试
测试目标:衡量已建立同步关系后,上游写入完成到下游可见的时间差。
测试步骤
- 在上游集群创建 TPC-H 1T 的库表信息。
- 创建 TPC-H 1T 数据库的同步任务。
- 等待 TPC-H 1T 数据导入完成,记录完成时间。
- 等待下游数据同步完成,记录完成时间。
测试结论
增量同步时间差:33 秒。
全量同步性能测试
测试目标:衡量在上游已有完整 1T 数据的情况下,新建同步任务到下游数据完整可见的总耗时。
测试步骤
- 在上游集群创建 TPC-H 1T 的库表信息并完成数据导入,记录完成时间。
- 创建 TPC-H 1T 数据库的同步任务。
- 等待下游数据同步完成,记录完成时间。
测试结论
全量同步时间差:6 分 1 秒。
Flink 同步性能测试
测试目标:衡量上游通过 Flink 持续写入时,下游同步进度与上游写入进度之间的实时差距(lag)。
测试步骤
- 上游使用 Flink 导入方式导入 100,000,000 条数据。
- 创建库表的同步任务。
- 在每个阶段观察下游同步完成时间与上游导入完成时间的差异(例如:1,000,000 条、2,000,000 条等)。
- 记录上游最后一次导入完成时间。
- 记录下游同步完成时间。
测试结论
每个阶段的 lag 时间均保持在 5 秒 以内。
测试结论汇总
| 测试场景 | 数据规模 | 同步延迟 / 耗时 |
|---|---|---|
| 增量同步 | TPC-H 1T | 33 秒 |
| 全量同步 | TPC-H 1T | 6 分 1 秒 |
| Flink 实时同步 | 1 亿条数据流式写入 | 各阶段 lag ≤ 5 秒 |
以上数据均基于本页所列默认集群配置测得,实际生产环境的同步性能受集群规格、网络带宽、Tablet 数量及业务写入模式等因素影响。如需进一步优化,请参考 操作手册。