本文介绍如何使用OssImport将数据从第三方存储(或OSS)迁移到OSS。

环境配置

OssImport有单机模式和分布式模式两种部署方式:
  • 对于小于 30TB 的小规模数据迁移,单机模式即可完成。
  • 对于大规模的数据迁移,请使用分布式模式。
假设您需要将迁移源腾讯云COS华南1(深圳)区域的500TB数据,于一周内迁移至OSS华东1(杭州)区域。您需要进行OssImport分布式环境配置:
  • 开通OSS
    1. 使用您的账号创建华东1(杭州)区域的OSS Bucket。
    2. 在RAM控制台创建子帐号,并授权该子账号访问OSS的权限,并保存AccessKeyID和AccessKeySecret。
  • 购买ECS

    购买OSS同区域华东1(杭州)的ECS,一般普通的2核4G机型即可,如果迁移后ECS需释放,建议按需购买ECS。

    ECS所需数量的计算公式为:X/Y/(Z/100)台。其中X为需要迁移的数据量、Y为要求迁移完成的时间(天)、Z为单台ECS迁移速度Z Mbps(每天迁移约Z/100 TB数据)。假设单台ECS迁移速度达到200Mbps(即每天约迁移2TB数据),则上述示例中需购买ECS 36台(即500/7/2)。

  • 配置OssImport

    结合本示例中的大规模迁移需求,您需要在ECS上搭建OssImport分布式模式。有关分布式部署的配置定义信息,如conf/job.cfgconf/sys.properties、并发控制等配置,请参考说明及配置。有关分布式部署的相关操作,如OssImport下载、配置过程的常见错误及排除,请参考分布式部署

迁移步骤

使用分布式模式将第三方存储迁移至OSS的过程如下:
说明 在ECS上搭建OssImport分布式环境后,OssImport从腾讯云COS华南1(深圳)区域下载数据到ECS华东1(杭州),建议使用外网。使用OssImport从ECS华东1(杭州)将数据上传到OSS华东1(杭州),建议使用内网。


  1. 全量迁移第三方存储T1前的历史数据,详细步骤请参考分布式部署的运行

    注意T1为Unix时间戳,即自1970年1月1日UTC零点以来的秒数,通过命令date +%s获取)。

  2. 在OSS控制台打开OSS镜像回源,回源地址设置为迁移源(第三方存储)。
  3. 将业务系统读写切换至OSS,此时业务系统记录的时间为T2。

    T1前的数据从OSS读取,T1后的数据则通过OSS镜像回源从第三方存储读取,新数据完全写入OSS。

    T2后不再有新数据写入迁移源。

  4. 修改配置文件job.cfg的配置项importSince=T1,重新发起迁移任务,进行T1~T2的增量数据迁移。
    说明
    • 步骤4完成后,您业务系统的所有的读写都在OSS上。第三方存储只是一份历史数据,您可以根据需要决定保留或删除。
    • OssImport只负责数据的迁移和校验,不会删除任何数据。

迁移过程涉及到的成本包含ECS费用、流量费用、存储费用、时间成本。此外,如果数据超过TB级别,存储成本和迁移时间成正比,且相对流量、存储费用,ECS费用较小。加大ECS数量,会减少迁移时间。

参考文档

有关OssImport的相关说明,请参考以下文档:

分布式部署

说明及配置

数据迁移

常见问题