文档

新版计费项

更新时间:
一键部署

本文档详细介绍了从不同源端数据源到OSS进行数据迁移时的费用构成,包括 OSS 产品的内外网传输费用、API请求费、解冻费用及流量费用。该文档适用于新版在线迁移服务。

计费组成

概述

不同源端到目的端迁移数据的收费情况如下表所示:

重要
  • 当数据源所在地域与迁移服务部署地域一致时,数据源OSS将不会产生外网读取费用。

  • 当数据源所在地域与迁移服务部署地域不一致时,数据源OSS将会产生外网读取费用。

迁移类型

迁移场景

源端下行流量费

源端请求费

目的端请求费

传输加速的费用

OSS之间

两个Bucket之间的数据迁移

请参见阿里云OSS之间迁移,以获取OSS之间迁移数据的详细收费信息。

收费

收费

收费(开启时)

说明

仅开启传输加速时,会产生传输加速的费用,此费用由目的端OSS收取。

第三方存储服务

AWS S3-OSS

收费

收费

收费

-

七牛 kodo-OSS

收费

收费

收费

-

腾讯 COS-OSS

收费

收费

收费

-

华为 OBS-OSS

收费

收费

收费

火山 TOS-OSS

收费

收费

收费

其他源

HTTP/HTTPS-OSS

收费

收费

收费

-

LocalFS-OSS

收费

收费

收费

-

LocalFS-LocalFS

收费

收费

收费

-

OSS-LocalFS

收费

收费

收费

-

计费场景

阿里云OSS之间迁移

阿里云OSS之间迁移的计费项组成如下图所示,详细示例请参见源端为OSS

源端和迁移服务部署同地域

当数据源所在地域与所选的迁移服务部署地域一致时,数据源OSS将不会产生外网读取费用。

计费同区域.jpg

源端和迁移服务部署跨地域

当数据源所在地域与所选的迁移服务部署地域不一致时,数据源OSS将会产生外网读取流量费用。

计量跨区域.jpg

重要

OSS之间如需跨境迁移数据,建议目的端OSS开启传输加速,此费用将由目的端OSS收取。

HTTP/HTTPS迁移至OSS

HTTP/HTTPS迁移至OSS的计费项组成如下图所示:

image.png

第三方存储服务迁移至OSS

第三方存储服务迁移至OSS的计费项组成如下图所示:1

API请求费用

在线迁移任务在进行数据迁移前,需要进行以下操作:对源端数据进行扫描、对源地址和目的地址的文件进行对比、在迁移时将源文件下载后上传到目的地址,并在迁移完成后对文件的元数据进行校验,这些过程都会产生相应的API请求。

由于源端的文件数量不同,ListObject请求的次数也不同,每次最多返回1000个文件。在不同的数据迁移场景下以及选择不同的覆盖方式,API请求的次数也会有所不同。对于单个文件,API请求次数的介绍如下:

说明

数据从OSS迁移到OSS时,对于150MB以上的append类型文件,不会进行分片迁移,而是按照小文件计算API请求次数。

如果待迁移的文件大小大于或等于150MB,则在迁移数据时会将文件进行分片后再上传,每个分片大小为50MB。因此,迁移数据的请求数将根据迁移数据的大小而定。举例来说,如果文件大小为159MB,则N = 159MB/50MB ≈ 4;如果文件大小为150MB,则N = 150MB/50MB = 3。N的计算公式如上所述。(以上阈值仅供参考,请以后台实际数值为准)

重要

以下说明默认为文件迁移成功的状态,不涉及迁移失败时的API请求。

覆盖方式:不覆盖

针对源地址中存在,目的地址中不存在的文件

  • 当源地址中的文件大小小于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    GetObject × 1

    -

    2

    目的地址

    HeadObject × 1

    PutObject × 1

    HeadObject × 1

    3

  • 当源地址中的文件大小大于或等于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    GetObject × N

    -

    1+N

    目的地址

    HeadObject × 1

    InitiateMultipartUpload × 1

    UploadPart × N

    ListParts × 1

    CompleteMultipartUpload×1

    HeadObject × 1

    5+N

针对源地址和目的地址都存在的同名文件

  • 当源地址中的文件大小小于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    -

    -

    1

    目的地址

    HeadObject × 1

    -

    -

    1

  • 当源地址中的文件大小大于或等于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    -

    -

    1

    目的地址

    HeadObject × 1

    -

    -

    1

覆盖方式:全部覆盖

针对源地址中存在,目的地址中不存在的文件

  • 当源地址中的文件大小小于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    GetObject × 1

    -

    2

    目的地址

    -

    PutObject × 1

    HeadObject × 1

    2

  • 当源地址中的文件大小大于或等于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    GetObject × N

    -

    1+N

    目的地址

    -

    InitiateMultipartUpload × 1

    UploadPart × N

    ListParts × 1

    CompleteMultipartUpload×1

    HeadObject × 1

    4+N

针对源地址和目的地址都存在的同名文件

  • 当源地址中的文件大小小于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    GetObject ×1

    -

    2

    目的地址

    -

    PutObject × 1

    HeadObject × 1

    2

  • 当源地址中的文件大小大于或等于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    GetObject × N

    -

    1+N

    目的地址

    -

    InitiateMultipartUpload ×1

    UploadPart × N

    ListParts × 1

    CompleteMultipartUpload ×1

    HeadObject × 1

    4+N

覆盖方式:根据最后修改时间覆盖

针对源地址中存在,目的地址中不存在的文件

  • 当源地址中的文件大小小于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    GetObject × 1

    -

    2

    目的地址

    HeadObject × 1

    PutObject × 1

    HeadObject × 1

    3

  • 当源地址中的文件大小大于或等于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    GetObject × N

    -

    1+N

    目的地址

    HeadObject × 1

    InitiateMultipartUpload × 1

    UploadPart × N

    ListParts ×1

    CompleteMultipartUpload ×1

    HeadObject × 1

    5+N

针对源地址和目的地址都存在的同名文件,且目的地址文件版本均早于源地址文件

  • 当源地址中的文件大小小于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    GetObject × 1

    -

    2

    目的地址

    HeadObject × 1

    PutObject × 1

    HeadObject × 1

    3

  • 当源地址中的文件大小大于或等于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    GetObject × N

    -

    1+N

    目的地址

    HeadObject × 1

    InitiateMultipartUpload × 1

    UploadPart × N

    ListParts × 1

    CompleteMultipartUpload×1

    HeadObject × 1

    5+N

针对源地址和目的地址都存在的同名文件,且目的地址文件版本均晚于源地址文件

  • 当源地址中的文件大小小于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    -

    -

    1

    目的地址

    HeadObject × 1

    -

    -

    1

  • 当源地址中的文件大小大于或等于150MB时:

    操作位置

    迁移前数据对比请求

    迁移数据请求

    迁移后数据校验请求

    API请求次数

    源地址

    HeadObject × 1

    -

    -

    1

    目的地址

    HeadObject × 1

    -

    -

    1

计费案例

案例1:某用户需要迁移1000个文件,其中900个文件大小均为500KB,100个文件大小为160MB,目的地址都没有同名文件。API请求总次数如下:

说明

示例默认迁移任务正常完成,未产生迁移错误。

  • 覆盖方式:不覆盖或者根据最后修改时间覆盖

    • 源地址

      • 扫描:1(ListObject)

      • 小文件:900(HeadObject)+ 900(GetObject) = 1800

      • 大文件:100(HeadObject)+100×4(GetObject) = 500

      • 总计:1 + 1800 + 500 = 2301

    • 目的地址:

      • 小文件:900x2(HeadObject)+ 900(PutObject) = 2700

      • 大文件:100x2(HeadObject) + 100(InitiateMultipartUpload) + 100×4(UploadPart) +100 (ListParts) +100 (CompleteMultipartUpload) = 900

      • 总计:2700 + 900 = 3600

  • 覆盖方式:全部覆盖

    • 源地址

      • 扫描:1(ListObject)

      • 小文件:900(HeadObject)+ 900(GetObject) = 1800

      • 大文件:100(HeadObject)+100×4(GetObject) = 500

      • 总计:1 + 1800 + 500 = 2301

    • 目的地址:

      • 小文件:900(HeadObject)+ 900(PutObject) = 1800

      • 大文件:100(HeadObject) +100(InitiateMultipartUpload) + 100×4(UploadPart) + 100 (ListParts) + 100(CompleteMultipartUpload) = 800

      • 总计:1800 + 800 = 2600

案例2:该用户需要迁移1000个文件,其中有900个文件大小均为500KB,100个文件大小为160MB。目的地址已存在同名文件,且目的地址文件版本均早于源地址文件。API请求次数总计如下:

说明

示例默认迁移任务正常完成,未产生迁移错误。

  • 覆盖方式:不覆盖

    • 源地址

      • 扫描:1(ListObject)

      • 小文件:900(HeadObject) = 900

      • 大文件:100(HeadObject) = 100

      • 总计:1 + 900 + 100 = 1001

    • 目的地址:

      • 小文件:900(HeadObject) = 900

      • 大文件:100(HeadObject) = 100

      • 总计:900 + 100 = 1000

  • 覆盖方式:全部覆盖

    • 源地址

      • 扫描:1(ListObject)

      • 小文件:900(HeadObject)+ 900(GetObject) = 1800

      • 大文件:100(HeadObject)+100×4(GetObject) = 500

      • 总计:1 + 1800 + 500 = 2301

    • 目的地址:

      • 小文件:900(HeadObject)+ 900(PutObject) = 1800

      • 大文件:100(HeadObject) +100(InitiateMultipartUpload) + 100×4(UploadPart) + 100 (ListParts) + 100(CompleteMultipartUpload) = 800

      • 总计:1800 + 800 = 2600

  • 覆盖方式:根据最后修改时间覆盖

    • 源地址

      • 扫描:1(ListObject)

      • 小文件:900(HeadObject)+ 900(GetObject) = 1800

      • 大文件:100(HeadObject)+100×4(GetObject) = 500

      • 总计:1 + 1800 + 500 = 2301

    • 目的地址:

      • 小文件:900x2(HeadObject)+ 900(PutObject) = 2700

      • 大文件:100x2(HeadObject) + 100(InitiateMultipartUpload) + 100×4(UploadPart) +100 (ListParts) +100 (CompleteMultipartUpload) = 900

      • 总计:2700 + 900 = 3600

案例3:某用户需要迁移1000个文件,其中900个文件大小均为500KB,100个文件大小为160MB,目的地址和源地址均存在同名文件,且目的地址文件均晚于源地址文件。API请求的总次数如下:

说明

示例默认迁移任务正常完成,未产生迁移错误。

  • 覆盖方式:不覆盖或者根据最后修改时间覆盖

    • 源地址

      • 扫描:1(ListObject)

      • 小文件:900(HeadObject) = 900

      • 大文件:100(HeadObject) = 100

      • 总计:1 + 900 + 100 = 1001

    • 目的地址:

      • 小文件:900(HeadObject) = 900

      • 大文件:100(HeadObject) = 100

      • 总计:900 + 100 = 1000

  • 覆盖方式:全部覆盖

    • 源地址

      • 扫描:1(ListObject)

      • 小文件:900(HeadObject)+ 900(GetObject) = 1800

      • 大文件:100(HeadObject)+100×4(GetObject) = 500

      • 总计:1 + 1800 + 500 = 2301

    • 目的地址:

      • 小文件:900(HeadObject)+ 900(PutObject) = 1800

      • 大文件:100(HeadObject) +100(InitiateMultipartUpload) + 100×4(UploadPart) + 100 (ListParts) + 100(CompleteMultipartUpload) = 800

      • 总计:1800 + 800 = 2600

说明

API请求的实际费用以各存储服务商的定价为准。,OSS的费用请参见计量项和计费项

解冻取回费用

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

  • 请您务必完成解冻操作后再创建源数据地址和迁移任务。

  • 请您根据待迁移的数据总量确保解冻时长,以防迁移期间数据再次变成冻结状态。

  • 解冻操作会收取数据取回的费用,部分解冻服务收费较高。具体计费规则可咨询您的源存储空间服务运营商。

说明

在线迁移服务并不会对源端数据执行解冻操作。若您源端有未解冻、解冻中的文件,则这些文件都会迁移失败。

下载与上传流量费用

数据迁移时,在线迁移服务会先将数据从源端下载,再将数据上传至OSS。这个过程会产生一定的流量费用,不同场景下的流量费用如下:

重要

以下说明默认为迁移成功的状态,不涉及迁移失败时流量费用。

源端为第三方存储服务商

此时会在源端产生数据下载费用,产生的流量由数据的实际大小决定,由源地址所在存储服务商收取。数据在一定带宽范围内上传至OSS不收取流量费用,更多信息,请参见使用限制

源端为OSS

两个OSS Bucket之间的数据迁移操作是否产生下行流量费,与您是否在控制台上选择了正确的迁移服务部署地域有关,此处所指的迁移服务部署地域,是指如下图中所示的地域选择,您需要在创建任务前选择地域。

在线迁移服务部署地域.jpg

1.当数据源所在地域与所选的迁移服务部署地域一致时,数据源OSS将不会产生外网读取费用。

说明

示例:源和目的同为北京OSS,在线迁移服务部署地域选择北京,迁移时不会在源端OSS产生外网读取费用。

同区域.jpg

2.当数据源所在地域与所选的迁移服务部署地域不一致时,数据源OSS将会产生外网读取费用。

说明

示例:源为北京OSS,目的为新加坡OSS,在线迁移服务部署地域选择新加坡,迁移时会在源端OSS产生外网读取费用。

跨地域.jpg

重要

为了遵循传输链路最短原则,建议在迁移前,将迁移服务部署地域与数据源所在的地域保持一致。如果没有可用的地域,建议选择靠近您业务的地域,以确保迁移效果最佳。