Basic Concepts

Overview

The OBS system adopts a layered structure to store data in two layers: upper layer and lower layer. The upper-layer data structure is called bucket. Each bucket and its name are unique across the system. The lower-layer data structure stores objects which are data entities. An object must belong to a bucket. Names of the objects in a bucket must be different from each other, but names of the objects in different buckets can be the same.

Object

Objects are basic entities in OBS. The data (file) uploaded to OBS is stored as an object in a bucket of OBS. An object consists of Key, Metadata, and Data.

  • Object name (Key): A key is the unique identifier of an object.
  • Metadata: describes the object attributes. Metadata contains system metadata and user metadata. All the metadata is uploaded to OBS as key-value pairs.
    • System metadata is automatically generated by OBS and is used for processing object data. It includes object attributes such as DateContent-lengthLast-modify, and Content-MD5.
    • User metadata is specified by users to describe objects when they upload the objects.

Multipart upload is applicable to objects with 48.8 TB or smaller sizes. Other upload modes are applicable to objects with 5 GB or smaller sizes. Users can choose a proper upload mode according to their actual conditions.

Bucket

In OBS, buckets are the upper-level data structure. They are the storage space used to store objects. Users can configure bucket policies to control access permissions, lifecycle, event notification, and static website hosting. Users can create different buckets to implement different storage policies.

  • OBS has a flat data structure, with no directories that exist in file systems.
  • The name of each bucket must be globally unique in the service area of OBS. Once created, the bucket name cannot be changed.
  • Each tenant can create a maximum of 100 buckets.
  • The name of each object in a bucket must be unique. A newly uploaded object will replace an existing object with the same name. Objects with the same name can coexist in a bucket only when the versioning function is enabled.
  • For a bucket, you can set its default object storage class to Standard, Infrequent Access, or Archive. If no storage class is specified for a bucket, the object will inherit the bucket's default storage class.

Region

A region refers to a data center area where the OBS service resides, namely, different physical locations and network access points. Users can select a region to store data according to various requirements, such as the price, response latency, and request source. Generally, a region closer to users can be accessed faster.

A region is specified when creating a bucket. Once specified, the region cannot be changed. All objects in the bucket are stored in the region-corresponding data center. Currently, users cannot specify a region directly for an object.

For details, see Domain Name and Data Center.

Domain Name (Endpoint)

An endpoint is a domain name used for accessing OBS. In addition, OBS provides region domain names. For example, the region endpoint of North China is obs.cn-north-1.myhwclouds.com. Region domain names can simplify steps for locating a domain name and reduce access latency. You can choose either the global or region domain name according to your actual conditions.

For details, see Domain Name and Data Center.

Access Keys (AK and SK)

An Access Key ID (AK) and a Secret Access Key (SK) are used to authenticate identities. If you use a client to send a request to OBS, the request header must contain a signature. The signature is generated based on the SK, request time, and request type.

An AK and an SK form a key pair used to access OBS. When OBS APIs are used to access stored data, the AK and SK are used to generate authentication information for security authentication.

After subscribing to the OBS service, you can log in to My Credential and create AKs and SKs based on site requirements. The system identifies users who access the system by their AKs, and SKs are used for key authentication. For details, see Creating Access Keys (AK and SK).

  • One AK maps to only one user but one user can have multiple AKs.
  • One SK maps to one AK, forming a key pair for accessing OBS and thereby ensuring access security.

REST APIs

OBS provides external services through HTTP REST APIs. In a RESTful architecture, each Uniform Resource Identifier (URI) represents a specific resource. The resource can be a text segment, image, song, or service.

OBS uses buckets, objects, and their resource parameters to locate a specific URL. Use the URL when you want to operate resources.

The following provides a URL format. The parameters in square brackets ([ ]) are optional.

protocol ://[bucket.]hostname[:port] [/object] [?param]

Registration