Updated on 2024-12-18 GMT+08:00

Overview

Introduction

Object Storage Service (OBS) provides massive, secure, and cost-effective data storage capabilities for you to store data of any type and size. You can use it in enterprise backup/archiving, video on demand (VoD), video surveillance, and many other scenarios.

  • Standard APIs: With HTTP RESTful APIs, OBS allows you to use client tools or third-party tools to access object storage.
  • Data sharing: Servers, embedded devices, and IoT devices can use the same path to access shared object data in OBS.
  • Public/Private networks: OBS allows data to be accessed from public networks to meet Internet application requirements.
  • Capacity and performance: No capacity limit; high performance (read/write I/O latency within 10 ms).
  • Use cases: Deployments/StatefulSets in the ReadOnlyMany mode and jobs created for big data analysis, static website hosting, online VOD, gene sequencing, intelligent video surveillance, backup and archiving, and enterprise cloud boxes (web disks). You can create object storage by using the OBS console, tools, and SDKs.

OBS Specifications

OBS provides multiple storage classes to meet customers' requirements on storage performance and costs.

  • Object buckets provide reliable, high-performance, secure, and budget-friendly storage for data. They have no restrictions on the quantity of files or storage capacity.
    • Standard: features low latency and high throughput. It is therefore good for storing frequently (multiple times per month) accessed files or small files (less than 1 MB). Its application scenarios include big data analytics, mobile apps, hot videos, and social apps.
    • OBS Infrequent Access: applicable to storing semi-frequently accessed (less than 12 times a year) data requiring quick response. Its application scenarios include file synchronization or sharing, and enterprise-level backup. This storage class has the same durability, low latency, and high throughput as the Standard storage class, with a lower cost, but its availability is slightly lower than the Standard storage class.
  • A parallel file system is a high-performance file system provided by OBS. It is designed to provide high-performance file semantics for big data scenarios. For details, see About PFS.

For details about OBS storage classes, see Storage Classes.

Performance

Every time an OBS volume is mounted to a container workload, a resident process is created in the backend. When a workload uses too many OBS volumes or reads and writes a large number of object storage files, resident processes will consume a significant amount of memory. The amount of memory required in these scenarios is listed Table 1. To ensure stable running of the workload, make sure that the number of OBS volumes used does not exceed the requested memory. For example, if the workload requests for 4 GiB of memory, the number of OBS volumes should be no more than 4.

Table 1 Memory required by a single object storage resident process

Test Item

Memory Usage

Long-term stable running

About 50 MiB

Concurrent write to a 10 MB file from two processes

About 110 MiB

Concurrent write to a 10 MB file from four processes

About 220 MiB

Write to a 100 GB file from a single process

About 300 MiB

Application Scenarios

OBS supports the following mounting modes based on application scenarios:

  • Using an Existing OBS Bucket Through a Static PV: static provisioning. You use an existing OBS volume to create a PV and then mount the PV to the workload through a PVC. This mode applies to scenarios where the underlying storage is available or billed on a yearly/monthly basis.
  • Using an OBS Bucket Through a Dynamic PV: dynamic provisioning. You do not need to create OBS volumes in advance. Instead, specify a StorageClass during PVC creation. An OBS volume and a PV will be automatically created. This mode applies to scenarios where no underlying storage is available.

Billing