更新时间:2024-10-25 GMT+08:00

背景信息

本教程介绍如何在华为云对象存储 OBS 之间进行跨账号、跨地域、以及同地域内的数据迁移。

华为云对象存储迁移服务(Object Storage Migration Service,OMS)是一种线上数据迁移服务,可以帮助您将其他云服务商对象存储服务中的数据在线迁移至华为云的对象存储服务(Object Storage Service,OBS)中,也可以在对象存储 OBS 之间进行灵活的数据迁移。

使用华为云对象存储迁移服务,您只需在控制台填写源端数据地址和目的端 OBS 地址信息,并创建迁移任务或创建迁移任务组即可(迁移任务与迁移任务组的区别参见迁移任务与迁移任务组的适用场景是什么?)。启动迁移后,您可以通过控制台查看迁移任务、管理迁移任务。

割接方案

如涉及业务割接,请参考割接方案最佳实践

需要根据实际情况选择割接方式,上述方案仅供参考。

归档存储

如源端有数据处于归档状态,请参考迁移归档存储数据最佳实践进行迁移。

约束与限制

OMS迁移任务限制参见下表。

表1 OMS迁移任务限制

类别

限制

多版本对象迁移

OMS默认只迁移源端多版本对象中的最新版本,不支持迁移历史版本的对象存储数据。

目的端桶存储类别

目的端桶的存储类别只能为标准存储或者低频访问存储。迁移完成后,可以自行修改桶的存储类别。

迁移网络

仅支持公网迁移,不支持专线迁移。

元数据迁移

仅支持中文字符、英文字符、数字和中划线【-】迁移。除上述字符外,其他所有字符均不支持。
  • 中文字符:迁移过程中,会被转换成URL编码形式。
    注意:

    不支持中文标点符号迁移,由于中文标点符号不会被转换成URL编码,因此元数据中包含中文标点符号时,将无法迁移成功。

  • 英文字符、数字与中划线【-】:迁移过程中不需要进行编码转换,可以直接迁移。

迁移范围

目前单个任务(迁移任务/迁移任务组)仅支持迁移单桶数据,如果涉及多桶数据迁移,需要创建多个任务。

迁移速度

通常OMS的迁移速度参考值是10~20 TB每天。若需更高的迁移效率,建议使用迁移中心MgC的存储迁移工作流进行迁移。迁移中心MgC提供独享的集群资源,能够动态扩展迁移性能,最高支持20Gbit/s带宽。

迁移速度受源端对象个数、大小,带宽以及公网传输距离影响,建议用户创建一个含有实际数据的迁移任务来测试迁移速度,实际最大迁移速度为单个任务平均速度的5倍(单个Region内并发任务数最大为5)。如果需要更高的并发任务数,可以使用迁移中心 MgC的存储迁移工作流来自定义并发子任务数。

归档数据

对于归档类型的数据,迁移前需要您进行解冻操作,待解冻完成后再创建迁移任务,解冻时请注意如下事项:

  • 请务必在解冻完成后再创建迁移任务。
  • 请根据待迁移的数据总量评估并设置解冻有效期,以防迁移期间数据再次变成归档状态。
  • 解冻操作可能会产生一定的费用,由源端云厂商收取,计费规则请咨询源端云厂商。

迁移任务

同一用户,单个Region内并发任务数最大为5。

说明:

假设分别迁移对象存储数据到华北-北京一和华南-广州时,总并发数为5*2=10个。

24小时内,单个Region内最多创建迁移任务数为5000个。

迁移任务组

同一用户,单个Region内并发任务组数最大为5。

说明:

假设分别迁移对象存储数据到华北-北京一和华南-广州时,总并发数为5*2=10个。

同步任务

同步任务和迁移任务、迁移任务组共用配额,优先于迁移任务、迁移任务组下发。

并发执行同步中的任务数量最多为5个。

对象列表文件

  • 对象列表文件大小不能超过1024MB。
  • 对象列表文件必须是“.txt”类型的文件,并且该文件元数据中的“ContentType”只能为:“text/plain”。
  • 对象列表文件必须是UTF-8无BOM格式编码格式。
  • 对象列表文件中每行只能包含一个对象名称,并且对象名称使用URL Encode编码。
  • 对象列表文件中每行不要添加无效空格,否则会将空格作为对象名,导致迁移失败。
  • 对象列表文件中每行长度不要超过65535,否则会导致迁移失败。
  • 对象列表文件的元数据中不能设置“ContentEncoding”,否则会导致迁移失败。

URL列表文件

  • URL列表文件大小不能超过1024MB。
  • URL列表文件必须是“.txt”类型的文件,并且该文件元数据中的“ContentType”只能为:“text/plain”。
  • URL列表文件必须是UTF-8无BOM格式编码格式。
  • URL列表文件中每行只能包含一个URL和目的端对象名称。
  • URL列表文件中每行长度不要超过65535,否则会导致迁移失败。
  • URL列表文件的元数据中不能设置“ContentEncoding”,否则会导致迁移失败。
  • URL列表文件中每行不要添加无效空格,否则会将空格作为对象名,导致迁移失败。
  • URL列表文件中每行使用制表符\t分隔URL和目的端对象名称,格式为:[URL][制表符][目的端对象名称],其中源端对象名称如果包含中文、特殊字符必须使用URL Encode对URL编码;目的端对象名称如果包含中文、特殊字符也需要使用URL Encode编码。例如:
     http://xxx.xxx.xxx.xxx.com/doc/thefile2.txt doc/thefile2.txt http://xxx.xxx.xxx.xxx.com/the%20file.txt the%20file.txt 
    http://xxx.xxx.xxx.xxx.com/the%20file2.txt the+file2.txt 
    http://xxx.xxx.xxx.xxx.com/doc/thefile.txt doc/thefile.txt
    注意:

    URL编码仅从域名后第二个字符开始,不要将协议头、域名以及域名两侧的斜线转码,否则将导致格式校验错误。

    URL与目的端对象名称之间使用一个制表符(键盘上Tab键)进行分隔,请勿使用空格。

    以上示例中,URL所表示的文件,被复制到目的端桶后,对象会被分别命名为:doc/thefile2.txt、the file.txt、the file2.txt以及doc/thefile.txt。

  • URL列表文件中的URL需确保可通过HEAD和GET请求正常访问。

失败对象列表文件

单个任务失败对象列表最多记录10万个失败对象。

说明:

失败对象超过10万个的场景,建议基于已有失败对象列表,分析处理后重新迁移。