Updated on 2024-03-04 GMT+08:00

Bucket Overview

A bucket is a virtual container used to store objects in OBS. OBS offers a flat structure based on buckets and objects. This structure enables all objects to be stored at the same logical layer, rather than being stored hierarchically.

Buckets have their own attributes, such as storage classes (for more information, see Storage Classes), access permissions, and regions. You can specify access permissions, a storage class, and a region when creating a bucket. You can also configure advanced attributes to fit different storage requirements.

OBS provides the following storage classes for buckets: Standard, Infrequent Access, Archive, and Deep Archive (under limited beta testing). With support for these storage classes, OBS caters to diverse storage performance and cost requirements. When creating a bucket, you can specify a storage class for the bucket, which can be changed later.

On OBS, each bucket name must be unique and cannot be changed. The region where a bucket resides cannot be changed once the bucket is created. When you create a bucket, OBS creates a default access control list (ACL) that grants the authorized user permissions on the bucket. Only authorized users can perform operations such as creating, deleting, viewing, and configuring buckets.

An account (including all IAM users under the account) can create a maximum of 100 buckets. You can leverage the fine-grained permission control capability of OBS to properly plan and use buckets. For example, you can create folders in a bucket based on object prefixes and use fine-grained permission control to isolate data between different departments. There is no limit on the number and total size of objects in a bucket.

As OBS is based on a RESTful architecture over HTTP and HTTPS, you can use uniform resource locators (URLs) to locate resources.

Figure 1 illustrates the relationship between buckets and objects in OBS.

Figure 1 Buckets and objects

You can use different methods to create buckets based on your use habits and storage needs. After a bucket is created, you can use different ways to upload files (data) to the bucket, where these files are stored as objects. In OBS, buckets and objects are located in different regions. You can use different methods to access the same bucket and resources in the same region.