All Products
Search
Document Center

Data Online Migration:Billing of the new version

Last Updated:Aug 12, 2024

This topic describes the billable items of Data Online Migration. When you migrate data from different data sources to Object Storage Service (OSS), fees are generated for transferring data over the Internet and private network, sending API requests, restoring objects, and consuming traffic. This topic applies to the new version of Data Online Migration.

Billable items

Overview

The following table describes the billable items of different source and destination types in different scenarios.

Source

Destination

Traffic consumed to download data from the source

API requests sent to the source

API requests sent to the destination

Transfer acceleration

OSS

OSS

For more information about the fees that are generated for migrating data between OSS buckets, see the Migrate data between Alibaba Cloud OSS buckets section of this topic.

Charged

Charged

Charged (only if enabled)

Note

If you want to migrate data across borders, we recommend that you enable the transfer acceleration feature to improve the efficiency of data transfer. The fees are generated only if you enable the transfer acceleration feature. The fees are charged by the destination OSS bucket.

Amazon Simple Storage Service (Amazon S3)

OSS

Charged

Charged

Charged

-

Kodo

OSS

Charged

Charged

Charged

-

Tencent Cloud Object Storage (COS)

OSS

Charged

Charged

Charged

-

Huawei Cloud Object Storage Service (OBS)

OSS

Charged

Charged

Charged

-

Volcano Engine Tinder Object Storage (TOS)

OSS

Charged

Charged

Charged

-

HTTP/HTTPS

OSS

Charged

Charged

Charged

-

Local file system

OSS

-

-

Charged

-

Local file system

Local file system

-

-

-

-

OSS

Local file system

For more information about the fees that are generated for migrating data between an OSS bucket and a local file system, see the Migrate data from an OSS bucket to a local file system section of this topic.

Charged

-

-

Billing scenarios

Migrate data between Alibaba Cloud OSS buckets

The following figure shows the billable items for data migration between OSS buckets. For more information, see the Migrate data from OSS section of this topic.

Migrate data from an OSS bucket that resides in the region selected in the Data Migration console

If the source OSS bucket resides in the region in which you access the Data Migration console, you are not charged for reading data from the source OSS bucket over the Internet.

计费同区域.jpg

Migrate data from an OSS bucket that does not reside in the region selected in the Data Migration console

If the source OSS bucket does not reside in the region in which you access the Data Migration console, you are charged for reading data from the source OSS bucket over the Internet.

计量跨区域.jpg

Important

If you want to migrate data across borders, we recommend that you enable the transfer acceleration feature for the destination OSS bucket. In this case, fees are charged by the destination OSS bucket.

Migrate data from an HTTP or HTTPS server to OSS

The following figure shows the billable items for data migration from an HTTP or HTTPS server to OSS.

image

Migrate data from a third-party storage service to OSS

The following figure shows the billable item for data migration from a third-party storage service to OSS.1

Migrate data from a local file system to an OSS bucket

The following figure shows the billable items for data migration from a local file system to OSS.

image

Migrate data from an OSS bucket to a local file system

The following figure shows the billable items for data migration from an OSS bucket to a local file system.

Migrate data from an OSS bucket that resides in the region selected in the Data Migration console

image

Migrate data from an OSS bucket that does not reside in the region selected in the Data Migration console

image

Migrate data between local file systems

The following figure shows the billable items for data migration between local file systems.

image

Fees for API requests

Before you use Data Online Migration to migrate data, you must perform the following operations on data: call the ListObject operation to scan data at the source data address, call the HeadObject operation to compare files at the source and destination data sources, download the source files and upload them to the destination data address, and verify the metadata of files after data migration. During the process, fees are generated for API requests.

The number of requests for the ListObject operation varies based on the number of files at the source data address. Up to 1,000 files can be returned at a time. The number of API requests that are required varies based on the scenarios and overwrite methods. This section describes how the number of API requests is calculated when a single file is migrated.

Note

If you migrate a file of the appendable type between OSS buckets and the file is greater than 150 MB in size, the system does not split the file into shards. The number of API requests is calculated based on the number of files that are less than 150 MB in size.

If a file of another type to be migrated is greater than or equal to 150 MB in size, during data migration, the system splits the file into shards and uploads them to the destination data address. Each shard is 50 MB in size. Therefore, the actual number of requests for data migration depends on the size of data to be migrated, and the number of API requests depends on the number of shards (N). For example, if the file to be migrated is 159 MB in size, the number of shards is calculated based on the following formula: N = 159 MB/50 MB ≈ 4. If the file to be migrated is 150 MB in size, the number of shards is calculated based on the following formula: N = 150 MB/50 MB = 3. The above threshold is for reference only. The actual number of API requests takes precedence.

Important

The following rules for calculating the number of API requests apply only if your migration is successful.

Overwrite method: Do not overwrite

The following API requests are sent to migrate a file that exists at the source data address but does not exist at the destination data address:

  • File at the source data address less than 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    GetObject × 1

    -

    2

    Destination data address

    HeadObject × 1

    PutObject × 1

    HeadObject × 1

    3

  • File at the source data address greater than or equal to 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    GetObject × N

    -

    1 + N

    Destination data address

    HeadObject × 1

    InitiateMultipartUpload × 1

    UploadPart × N

    ListParts × 1

    CompleteMultipartUpload×1

    HeadObject × 1

    5 + N

The following API requests are sent to migrate a file that has the same name at the source and destination data addresses:

  • File at the source data address less than 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    -

    -

    1

    Destination data address

    HeadObject × 1

    -

    -

    1

  • File at the source data address greater than or equal to 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    -

    -

    1

    Destination data address

    HeadObject × 1

    -

    -

    1

Overwrite method: Overwrite All

The following API requests are sent to migrate a file that exists at the source data address but does not exist at the destination data address:

  • File at the source data address less than 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    GetObject × 1

    -

    2

    Destination data address

    -

    PutObject × 1

    HeadObject × 1

    2

  • File at the source data address greater than or equal to 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    GetObject × N

    -

    1 + N

    Destination data address

    -

    InitiateMultipartUpload × 1

    UploadPart × N

    ListParts × 1

    CompleteMultipartUpload×1

    HeadObject × 1

    4 + N

The following API requests are sent to migrate a file that has the same name at the source and destination data addresses:

  • File at the source data address less than 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    GetObject ×1

    -

    2

    Destination data address

    -

    PutObject × 1

    HeadObject × 1

    2

  • File at the source data address greater than or equal to 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    GetObject × N

    -

    1 + N

    Destination data address

    -

    InitiateMultipartUpload ×1

    UploadPart × N

    ListParts × 1

    CompleteMultipartUpload ×1

    HeadObject × 1

    4 + N

Overwrite method: Overwrite based on the last modification time

The following API requests are sent to migrate a file that exists at the source data address but does not exist at the destination data address:

  • File at the source data address less than 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    GetObject × 1

    -

    2

    Destination data address

    HeadObject × 1

    PutObject × 1

    HeadObject × 1

    3

  • File at the source data address greater than or equal to 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    GetObject × N

    -

    1 + N

    Destination data address

    HeadObject × 1

    InitiateMultipartUpload × 1

    UploadPart × N

    ListParts ×1

    CompleteMultipartUpload ×1

    HeadObject × 1

    5 + N

The following API requests are sent to migrate a file that has the same name at the source and destination data addresses and the file version at the destination data address is earlier than that at the source data address:

  • File at the source data address less than 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    GetObject × 1

    -

    2

    Destination data address

    HeadObject × 1

    PutObject × 1

    HeadObject × 1

    3

  • File at the source data address greater than or equal to 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    GetObject × N

    -

    1 + N

    Destination data address

    HeadObject × 1

    InitiateMultipartUpload × 1

    UploadPart × N

    ListParts × 1

    CompleteMultipartUpload×1

    HeadObject × 1

    5 + N

The following API requests are sent to migrate a file that has the same name at the source and destination data addresses and the file version at the destination data address is later than that at the source data address:

  • File at the source data address less than 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    -

    -

    1

    Destination data address

    HeadObject × 1

    -

    -

    1

  • File at the source data address greater than or equal to 150 MB in size

    Location

    Request for data comparison before data migration

    Request for data migration

    Request for data verification after data migration

    Number of API requests

    Source data address

    HeadObject × 1

    -

    -

    1

    Destination data address

    HeadObject × 1

    -

    -

    1

Billing examples

Scenario: A user needs to migrate 1,000 files, and 900 of them are 500 KB in size and 100 of them are 160 MB in size.

Note

The following examples apply only if the migration task is successful and no migration error occurs.

Example 1: The names of files to be migrated do not exist at the destination data address

Overwrite method: Do not overwrite

Item

Operation at the source data address

Number of requests at the source data address

Operation at the destination data address

Number of requests at the destination data address

Operation on small files

HeadObject: 900

GetObject: 900

1,800

HeadObject: 900 × 2

PutObject: 900

2,700

Operation on large files

HeadObject: 100

GetObject: 100 × 4

500

HeadObject: 100 × 2

InitiateMultipartUpload: 100

UploadPart: 100 × 4

ListParts: 100

CompleteMultipartUpload: 100

900

Number of scans

ListObject: 1

1

-

-

Total number of requests

-

2,301

-

3,600

Overwrite method: Overwrite All

Item

Operation at the source data address

Number of requests at the source data address

Operation at the destination data address

Number of requests at the destination data address

Operation on small files

HeadObject: 900

GetObject: 900

1,800

HeadObject: 900

PutObject: 900

1,800

Operation on large files

HeadObject: 100

GetObject: 100 × 4

500

HeadObject: 100

InitiateMultipartUpload: 100

UploadPart: 100 × 4

ListParts: 100

CompleteMultipartUpload: 100

800

Number of scans

ListObject: 1

1

-

-

Total number of requests

-

2,301

-

2,600

Example 2: Files at the source and destination data addresses share the same names and the file version at the destination data address is earlier than that at the source data address

Overwrite method: Do not overwrite

Item

Operation at the source data address

Number of requests at the source data address

Operation at the destination data address

Number of requests at the destination data address

Operation on small files

HeadObject: 900

900

HeadObject: 900

900

Operation on large files

HeadObject: 100

100

HeadObject: 100

100

Number of scans

ListObject: 1

1

-

-

Total number of requests

-

1,001

-

1,000

Overwrite method: Overwrite All

Item

Operation at the source data address

Number of requests at the source data address

Operation at the destination data address

Number of requests at the destination data address

Operation on small files

HeadObject: 900 + GetObject: 900

1,800

HeadObject: 900 + PutObject: 900

1,800

Operation on large files

HeadObject: 100 + GetObject: 100 × 4

500

HeadObject: 100 + InitiateMultipartUpload: 100 + UploadPart: 100 × 4 + ListParts: 100 + CompleteMultipartUpload: 100

800

Number of scans

ListObject: 1

1

-

-

Total number of requests

-

2,301

-

2,600

Overwrite method: Overwrite based on the last modification time

Item

Operation at the source data address

Number of requests at the source data address

Operation at the destination data address

Number of requests at the destination data address

Operation on small files

HeadObject: 900 + GetObject: 900

1,800

HeadObject: 900×2 + PutObject: 900

2,700

Operation on large files

HeadObject: 100 + GetObject: 100 × 4

500

HeadObject: 100 × 2 + InitiateMultipartUpload: 100 + UploadPart: 100 × 4 + ListParts: 100 + CompleteMultipartUpload: 100

900

Number of scans

ListObject: 1

1

-

-

Total number of requests

-

2,301

-

3,600

Example 3: Files at the source and destination data addresses share the same names and the file version at the destination data address is later than that at the source data address

Overwrite method: Do not overwrite or Overwrite based on the last modification time

Item

Operation at the source data address

Number of requests at the source data address

Operation at the destination data address

Number of requests at the destination data address

Operation on small files

HeadObject: 900

900

HeadObject: 900

900

Operation on large files

HeadObject: 100

100

HeadObject: 100

100

Number of scans

ListObject: 1

1

Total number of requests

1,001

1,000

Overwrite method: Overwrite All

Item

Operation at the source data address

Number of requests at the source data address

Operation at the destination data address

Number of requests at the destination data address

Operation on small files

HeadObject: 900

GetObject: 900

1,800

HeadObject: 900

PutObject: 900

1,800

Operation on large files

HeadObject: 100

GetObject: 100 × 4

500

HeadObject: 100

InitiateMultipartUpload: 100

UploadPart: 100 × 4

CompleteMultipartUpload: 100

800

Number of scans

ListObject: 1

1

Total number of requests

2,301

2,600

Note

You are charged for API requests based on the pricing of storage service providers. For more information about billing methods and billable items of OSS, see Billing overview.

Fees for restoring and retrieving data

Before you create a migration job to migrate data of the Archive storage class, you must manually restore the data. Take note of the following items when you restore the data:

  • Before you create a source data address and a migration job, make sure that data of the Archive storage class is restored.

  • Make sure that you specify an appropriate number of days during which the restored data remains in the restored state based on the amount of data that you want to migrate. This can prevent data from entering the archived state during data migration.

  • You may be charged for the restoration operation. The fee may be relatively high. For more information about the billing methods, contact the service provider that offers the source bucket.

Note

Data Online Migration does not restore data of the Archive storage class at the source data address during data migration. The data that is not restored or is being restored cannot be migrated.

Fees for the traffic generated by data downloads and uploads

You are charged for the traffic that is generated when data is downloaded from the source data address and uploaded to OSS. The fees for the traffic that is consumed to download and upload the data vary based on the scenario.

Important

The following rules apply only if your migration is successful.

Migrate data from a third-party storage service

You are charged for downloading data from the source data address. The consumed traffic depends on the amount of data that you download. You are charged by the storage service provider that owns the source data address. You are not charged for uploading data to an OSS bucket within a specific bandwidth range. For more information, see Limits.

Migrate data from OSS

The region in which you access the Data Migration console determines whether you are charged for reading data from the source OSS bucket. The following figure shows how to select the region in which you access the Data Migration console. You must select a region before you create a migration task.

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

1. If the source OSS bucket resides in the region in which you access the Data Migration console, you are not charged for reading data from the source OSS bucket over the Internet.

Note

For example, if the source and destination OSS buckets reside in the China (Beijing) region and you select the China (Beijing) region in the Data Migration console, no fees are generated for reading data from the source OSS bucket over the Internet during the migration.

同区域.jpg

2. If the source OSS bucket does not reside in the region in which you access the Data Migration console, you are charged for reading data from the source OSS bucket over the Internet.

Note

For example, if you migrate data from an OSS bucket that resides in the China (Beijing) region to an OSS bucket that resides in the Singapore region, and you select the Singapore region in the Data Migration console, fees are generated for reading data from the source OSS bucket over the Internet.

跨地域.jpg

Important

To transfer data by using the shortest connection, we recommend that you select the region in which the source OSS bucket resides when you access the Data Migration console. If no region is available, we recommend that you select a region that is close to your business to ensure high migration performance.