迁移任务组如何拆分任务
迁移任务组拆分单个迁移任务的条件
创建条件判断逻辑:创建任务的条件(同时满足): 对象数 >= 50 并且预估迁移时间 > 6000秒。
- 对象数:每个迁移任务大于等于50个对象,避免创建过多小任务。
- 预估迁移时间:小对象(≤200KB):按固定耗时 0.002 秒/个;大对象(>200KB):按传输速度 60MB/秒 。6000秒等效数据量:约350GB数据或300万个对象。
当一轮列举(1000个对象)满足创建任务条件后,系统会额外检查剩余对象是否足够创建新任务:
| 剩余对象情况 | 处理方式 |
|---|---|
| 剩余预估时间 ≤ 6000秒 或 剩余对象数 < 50 | 合并到当前任务,避免任务过小 |
| 剩余预估时间 > 6000秒 且 剩余对象数 ≥ 50 | 创建新任务,剩余对象进入下一批次 |
场景示例
迁移10,000个100MB的大文件,最终约拆分3个迁移任务。拆分情况如下表所示:
| 轮次 | 累计对象数 | 预估时间计算 | 结果 |
|---|---|---|---|
| 第1轮 | 1000 | 1000 × (100MB÷60MB) = 1667秒 | 未达6000秒 |
| 第2轮 | 2000 | 2000 × 1.67 = 3334秒 | 未达6000秒 |
| 第3轮 | 3000 | 3000 × 1.67 = 5001秒 | 未达6000秒 |
| 第4轮 | 4000 | 4000 × 1.67 = 6689秒 | 创建任务1 |
| 第5轮 | 5000 | 5000 × 1.67 = 8335秒 | 继续累积 |
| ..... | |||
| 第7轮 | 7000 | 7000 × 1.67 = 11690秒 | 创建任务2 |
| ..... | |||
| 第10轮 | 10000 | 10000 × 1.67 = 16700秒 | 创建任务3 |