Updated on 2024-06-28 GMT+08:00

Constraints

This section describes the constraints on the use of OBS features.

Table 1 OBS use constraints

Item

Description

Bandwidth

By default, the maximum bandwidth for read/write (GET/PUT) requests of a single Huawei Cloud account is 16 Gbit/s. If the bandwidth reaches this upper limit, flow control will be triggered.

If you require a bandwidth higher than 16 Gbit/s, submit a service ticket.

Queries per second (QPS)

Default maximum QPS allowed by a single Huawei Cloud account:

  • 6,000 write requests (PUT Object) per second
  • 10,000 read requests (GET Object) per second
  • 1,000 listing requests (LIST) per second
NOTE:

If you use sequential prefixes (sorted by timestamp or in alphabetical order) for object naming, object access requests may be concentrated in a specific partition, resulting in access hotspots. This limits the request rate in the hot partition and increases access latency.

Random prefixes are recommended for naming objects so that requests are evenly distributed across partitions, achieving horizontal expansion. For details about how to name objects with random prefixes, see Optimizing the Performance.

If you require a higher QPS, submit a service ticket.

Resource packages

  • A resource package can be used only in the specified region and cannot be shared across regions. So select an appropriate region when purchasing a resource package.
  • OBS provides resource packages only for some billing items. For other billing items, the pay-per-use billing mode applies. For details, see Resource Package Overview.
  • Any resource usage beyond your package quotas in the current month is billed in the pay-per-use mode. A newly purchased resource package cannot cover the already generated resource usage.
  • A resource package must match your bucket's data redundancy policy (single-AZ storage or multi-AZ storage) and storage class (Standard, Infrequent Access, Archive, or Deep Archive), or the pay-per-use billing applies.
  • Your Standard storage, Archive storage, and Internet outbound traffic packages can cover the fees incurred by both your parallel file systems and buckets. The pull traffic and cross-region replication traffic packages are currently not available for parallel file systems.

Access rules

In consideration of the DNS resolution performance and reliability, OBS requires that the bucket name must precede the domain when a request carrying a bucket name is constructed to form a three-level domain name, also mentioned as virtual-hosted-style access domain name.

For example, you have a bucket named test-bucket in the ap-southeast-1 region, and you want to access the ACL of the test-object object in the bucket. The correct access URL is https://test-bucket.obs.ap-southeast-1.myhuaweicloud.com/test-object?acl.

Buckets

  • On OBS, each bucket name must be unique and cannot be changed.
  • After you create a bucket, its name, storage redundancy policy, and region cannot be changed.
  • An account (including all IAM users under this account) can create a maximum of 100 buckets and parallel file systems. You can use the fine-grained access control of OBS to properly plan and use buckets. For example, you can create folders in a bucket for storing objects with different prefixes and use fine-grained permission control to implement permission isolation between departments.
  • By default, there is no limit on the storage capacity of the entire OBS system or a single bucket, and any number of objects can be stored.
  • A bucket can be deleted only after all objects in the bucket have been deleted.
  • The name of a deleted bucket can be reused for another bucket or a parallel file system at least 30 minutes after the deletion.

Bucket inventories

See Bucket Inventory Overview.

Uploading objects

  • OBS Console puts limits on the size and number of files you can upload.
    • In regions that support batch uploads, a maximum of 100 files can be uploaded at a time, with a total size of no more than 5 GB. If you upload only one file in a batch upload, it cannot exceed 5 GB in size.
    • In regions that do not support batch uploads, only one file can be uploaded at a time, with a size of no more than 50 MB.
  • If you use OBS Browser+, obsutil, an SDK, or an API, you can upload a single object of up to 48.8 TB.
  • Batch upload is available only when:
    1. The region where the bucket resides supports batch upload.
    2. The bucket version is 3.0.
  • If versioning is disabled for your bucket and you upload a new file with the same name as the one you previously uploaded to your bucket, the new file automatically overwrites the previous one and does not retain its ACL information. If you upload a new folder using the same name that was used with a previous folder in the bucket, the two folders will be merged, and files in the new folder will overwrite those with the same name in the previous folder.
  • After versioning is enabled for your bucket, if the new file you upload has the same name as the one you previously uploaded to the bucket, a new file version will be added in the bucket.
  • Though any UTF-8 characters can be used in object keys (object names), it is recommended that object keys be named according to the object key naming guidelines. These guidelines help object key names substantially meet the requirements of DNS, web security characters, XML analyzers, and other APIs.

Deleting objects

If versioning is not enabled for a bucket, deleted objects cannot be recovered.

Deep Archive storage (under limited beta testing)

  • Append operations are not supported after objects are transitioned to the Deep Archive storage class.
  • Batch restore is not available for objects in the Deep Archive storage class.

Restoring Archive or Deep Archive objects

  • If an Archive or a Deep Archive object is being restored, you cannot suspend or delete the restore task.
  • You cannot restore an object in the Restoring state.
  • After an object is restored, an object copy in the Standard storage class will be generated. This way, there is an Archive or a Deep Archive object and a Standard object copy in the bucket at the same time. During the copy retention period, you will be billed for the storage space occupied by both the object and its copy. The Standard object copy will be automatically deleted upon its expiration.

Lifecycle management

There is no limit on the number of lifecycle rules in a bucket, but the total size of XML descriptions about all lifecycle rules in a bucket cannot exceed 20 KB.

Cross-region replication

See Cross-Region Replication Overview.

User-defined domain name binding

  • Only buckets whose version is 3.0 or later support the binding of user-defined domain names.
  • By default, a maximum of 20 user-defined domain names can be bound to a bucket. In some regions (for example, CN South-Guangzhou), a bucket can have up to 30 user-defined domain names bound. For the maximum number allowed in each region, see the requirements on OBS Console.
  • By default, user-defined domain names allow requests for OBS over only HTTP.

    If you want to use a bound domain name to access OBS over HTTPS, configure an HTTPS certificate for the domain name on the CDN management console.

    For details, see HTTPS Settings.

  • A user-defined domain name can be bound to only one bucket.
  • Currently, the suffix of a user-defined domain name can contain 2 to 6 uppercase or lowercase letters.

Back to source

See Back to Source Overview.

ACLs

  • A bucket ACL can have up to 100 grants. The total bucket ACL size cannot exceed 50 KB.
  • An object ACL can have up to 100 grants. The total object ACL size cannot exceed 50 KB.

Bucket policies

There is no limit on the number of bucket policies (statements) for a bucket, but the JSON descriptions of all bucket policies in a bucket cannot exceed 20 KB in total.

Parallel file systems

See the Parallel File System Feature Guide.

Image processing

See the Image Processing Feature Guide.