- What's New
- Function Overview
- Service Overview
- Getting Started
- User Guide
-
Best Practices
- Overview
- Automatically Checking for and Retrying Failed Migration Tasks
- Best Practices for Service Cutover
- Special Migration Scenarios
-
Migration from Other Clouds to Huawei Cloud
- Migrating Data Between Huawei Cloud OBS Buckets
- Migrating Data from Huawei Cloud PFS to Huawei Cloud OBS or Between PFS Systems
- Migrating Data from Alibaba Cloud OSS to Huawei Cloud OBS
- Migrating Data from Tencent Cloud COS to Huawei Cloud OBS
- Migrating Data from UCloud US3 to Huawei Cloud OBS
- Migrating Data from Kingsoft Cloud KS3 to Huawei Cloud OBS
- Migrating Data from QingCloud QingStor to Huawei Cloud OBS
- Migrating Data from Google Cloud Storage to Huawei Cloud OBS
- Migrating Data from Amazon S3 to Huawei Cloud OBS
- Migrating Data from Azure Blob Storage to Huawei Cloud OBS
- Migrating Data from HTTP/HTTPS Sources to Huawei Cloud OBS
- Configuring Synchronization Requests on Source Platforms
-
Migrating Archived Data
- Migrating Archived Data in Huawei Cloud OBS
- Migrating Archived Data in Alibaba Cloud OSS
- Migrating Archived Data in Tencent Cloud COS
- Migrating Archived Data in Kingsoft Cloud KS3
- Migrating Archived Data in UCloud US3
- Migrating Archived Data in Amazon S3
- Migrating Archived Data in Azure Blob Storage
- Other Migration Scenarios
- Change History
-
API Reference
- Before You Start
- API Overview
- Calling APIs
- Getting Started
- APIs V2 (Recommended)
-
Out-of-Date APIs
- Querying the API Version
- Creating a Migration Task
- Deleting a Migration Task
- Restarting a Migration Task
- Stopping a Migration Task
- Modifying a Traffic Limiting Rule
- Querying All Migration Tasks of a Tenant
- Querying the Total Number of Migration Tasks of a Tenant
- Querying Migration Tasks by Task IDs
- Querying Quotas of a Tenant
- Appendix
- Change History
- SDK Reference
-
FAQs
- Question Summary
-
Product Consulting
- When Do I Need to Perform Pre-migration Evaluation Before Creating Migration Tasks?
- How Do I Migrate OBS Bucket Data from One Region to Another?
- How Do I Migrate the OBS Bucket Data from One Account to Another?
- How Do I Migrate Data from Multiple Source Buckets to a Single OBS Bucket on Huawei Cloud?
- How Do I Migrate Data in the Root Directory?
- How Does Migration Affect My Source Data? What Are the Impacts on Migration If the Source Data Changes?
- How Do I Change the Storage Path of a Migrated Object?
- How Does OMS Ensure Data Consistency If Data Is Continuously Written to OBS?
- How Do I Obtain Required Permissions for the Source and Destination Platform Accounts?
- How Do I Review the Objects Migrated in a Migration Task?
- How Do I Review the Objects Migrated in a Migration Task Group?
- How Do I Review the Objects Migrated in a Synchronization Task?
- Can I Migrate Data in a Specified Period Using a Synchronization Task?
- Can OMS Only Migrate the Data Generated After a Specified Time?
- Can OMS Filter the Data to Be Migrated by Suffix?
- Does OMS Support Batch Bucket Migration?
- What Is the Storage Class of Archive Data Migrated to the Archive Destination Bucket?
- What Are the Application Scenarios of Migration Tasks and Migration Task Groups?
- If I Delete an Object from the Source Bucket, Will the Corresponding Object in the Destination Bucket Be Deleted?
- How Does OMS Ensure Data Consistency Between the Source and Destination Buckets?
- Why Is the Total Number or Size of Objects in the Destination Bucket Inconsistent with Those in the Source Bucket After the Migration?
- How Does Migration Affect Data in the Destination Bucket?
- Why Are the Migration Progress and the Transmitted Data Volume 0 After the Migration Is Complete?
- How Do I Choose Storage Classes?
-
Migration Constraints
- What Are the Constraints on Migrating Data to a Parallel File System with OMS?
- What Are the Restrictions on Migrating Data in a Parallel File System?
- How Do I Fix the Error "Destination bucket must be in the same region as OMS. Select a bucket that is located in region xxx, or change the OMS region to xxx" When I Create a Migration Task?
- How Do I Migrate Data from a Cloud Platform Not Supported by OMS?
-
Migration Duration
- How Can I Learn the Speed of a Migration Task?
- Why Is the Migration Progress Not Changing Even Though the Transferred Volume Is Increasing?
- Why Is the Migration Speed Slow Sometimes?
- What Can I Do If the Migration Speed Is Slow and a Large Number of Objects Failed to Be Migrated During a Cross-Region Migration on Huawei Cloud?
-
Exception Recovery
- What Can I Do If Migration Tasks Fail To Be Created After Evaluation?
- What Can I Do If the Migration Fails Because the Frequency of Accessing the Source Object Storage Exceeded the Upper Limit?
- What Can I Do If a Migration Task Fails?
- What Can I Do If a Migration Task Group Fails to Be Executed?
- What Can I Do If SMN Is Not Working Properly?
- What Can I Do If a Migration Task Fails Due to Inconsistent Encryption Status?
- What Can I Do If the Migration Task Failed Due to an Archive Data Read Failure?
- What Problems May I Encounter If CDN Is Enabled at the Source?
- What Do I Do If All Objects Whose Names Contain Slashes (/) Fail to be Migrated from Alibaba Cloud?
- How Do I Resolve the Error "Failed to access the object. Make sure that the object exists and you have the rights to access" When I Enter Object Prefixes?
- What Can I Do If Consistency Checks Fail During the Migration of Data in a Parallel File System?
- What Can I Do If the Migration Failed Because the Objects Cannot Be Downloaded from the Source Bucket?
- What Can I Do If a Migration Task Failed Due to Transmission Interruptions?
- Change History
- Videos
- General Reference
Copied.
Billing
Billing Mode
OMS is a free service. You pay for migration resources used (bandwidth and API calls). After the free period expires, you will be billed only for data migrated by OMS. This billing mode allows you to easily and flexibly estimate migration costs.
During the migration, the APIs of the object storage services on the source and destination platforms are called to upload and download data. You will be charged for the API requests generated as well as data download and upload. For details about the fees, see API Requests and Data Download and Upload.
Data Download and Upload
OMS needs to download data from source buckets and then upload the data to the destination OBS buckets.
- Any data download fees generated on the source platform are billed by the source cloud service provider. The total charges depend on the data size.
NOTE:
- To save money, you can subscribe to a Content Delivery Network (CDN) traffic package from the source cloud service provider, and enable the traffic limiting function of OMS to limit the traffic transmitted during peak hours.
- If the automatic restoration function of OMS is used, you need to pay for archive data restoration and retrieval.
- No fees are generated when data is uploaded to destination OBS buckets on Huawei Cloud.
- No traffic fees are generated for migration in the same region, regardless of the migration is performed within the same account or across accounts.
API Requests
Before the migration, OMS compares objects in source and destination buckets. Then, OMS downloads objects from the source bucket and then uploads them to the destination bucket. After the migration, OMS verifies the objects that are migrated.
All these operations generate API requests. There are basic requests and common requests (for listing objects, uploading failed object lists, retrying upon network exceptions, and automatic restoration). The number of API requests depends on the scenario.
- If there is no object in the destination bucket with the same name as one in the source bucket, the source object will be migrated.
- Source bucket: 2 HEAD and 1 GET requests
- One HEAD request is used to check if the object exists in the source bucket and compare the object with those in the destination bucket.
- One GET request is used to download the object from the source bucket.
- One HEAD request is used to verify consistency.
- Destination bucket: 2 HEAD and 2 PUT requests
- One HEAD request is sent to check whether the object already exists in the destination bucket.
- One PUT request is used to upload the object to the destination bucket.
- One PUT request is used to configure the object storage class after the migration is complete.
- One HEAD request is used to verify consistency.
- Source bucket: 2 HEAD and 1 GET requests
- If there is an object in the destination bucket with the same name and size as one in the source bucket, but the last modification time of the destination object is later than that of the source object, the source object will not be migrated.
- Source bucket: 1 HEAD request
- One HEAD request is used to check if the object exists in the source bucket and compare the object with those in the destination bucket.
- Destination bucket: 1 HEAD request
- One HEAD request is sent to check whether the object already exists in the destination bucket.
- Source bucket: 1 HEAD request
- If there is an object in the destination bucket with the same name as one in the source bucket, but the object has a different size or its last modification time is earlier than that of the source object, the source object will be migrated, and the migrated object will overwrite the destination object.
- Source bucket: 2 HEAD and 1 GET requests
- One HEAD request is used to check if the object exists in the source bucket and compare the object with those in the destination bucket.
- One GET request is used to download the object from the source bucket.
- One HEAD request is used to verify consistency.
- Destination bucket: 2 HEAD and 2 PUT requests
- One HEAD request is sent to check whether the object already exists in the destination bucket.
- One PUT request is used to upload the object to the destination bucket.
- One PUT request is used to configure the object storage class after the migration is complete.
- One HEAD request is used to verify consistency.
- Source bucket: 2 HEAD and 1 GET requests
Any source object larger than 50 MB will be uploaded in multiple parts with each part of up to 50 MB, and each part will generate their own GET and PUT requests.
For example, a 200 MB object will be divided into four parts, so there will be four GET requests needed to down load them from the source bucket, four PUT requests needed to upload them to the destination bucket, and one additional PUT request for combining them at the end. That means a 200 MB object generates the following requests:
- Source bucket: 2 HEAD and 4 GET requests
- Destination bucket: 2 HEAD and 5 PUT requests (1 PUT for each of the four parts and 1 combination PUT)
The actual price of an API request depends on the cloud service provider. For details about the price of the API requests of Huawei Cloud OBS, see Product Pricing Details.
How to Estimate Migration Fees
Generally, the migration fees can be estimated using the following formula:
Migration fee = Number of source API requests x Unit price of source API requests + Number of destination API requests x Unit price of destination API requests + Total size of source objects x Unit price of outbound traffic on the source platform
- Number of source API requests = (Total number of objects/1,000) + Number of objects x 3
- Number of destination API requests = Total number of objects x 4
- Unit price of outbound traffic on the source platform: determined by the source cloud service provider
NOTICE:
- The fees of the destination API requests are billed by Huawei Cloud. The fees of the source API requests and the outbound traffic on the source platform are billed by the source cloud service provider.
- Even if an object is skipped during the migration, API requests are still generated on the source platform and Huawei Cloud to check whether the object exists and compare it with other objects. You need to pay for these API requests.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot