Updated on 2024-05-31 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.

Each bucket has its own properties, such as a storage class, access permissions, and a region. You can create buckets with different storage classes and access permissions in different regions. You can also configure advanced bucket properties to fit a wide range of storage needs.

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.