This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Overview

Service Overview

Object Storage is an object storage service that allows users to easily store and use their desired data, with URL-based access for very convenient data management. It enables search and retrieval of large-scale data, and provides features such as encryption and version management. It offers both Public and Private URLs, and Public URLs can be accessed even from the internet environment.

Key Features

  • S3 API Utilization: Easy and fast access from applications through Restful API, and compatible with Amazon S3, so it can be easily used in applications integrated with Amazon S3.
  • Secure Usage: Provides encryption (SSE-S3), access control, and Public/Private access features, making it suitable for safely storing user data or backup data for service recovery.
  • Cost Efficiency: Users do not need to pre-set bucket capacity, and storage space is provided with efficient pricing that charges based on actual usage.
  • Replication: Can perform replication to buckets in different locations or the same location. Multiple replication policies can be set, and if the original bucket cannot be used due to failure or disaster, the service can be provided through the replicated bucket.

Architecture Diagram

Architecture Diagram
Fig. Object Storage Architecture Diagram

Provided Features

Object Storage provides the following features.

  • Storage Management: Provides features for creating Object Storage, creating folders, deleting folders, uploading files, downloading files, and deleting files.
  • Version Management: When version management is used, all versions of uploaded files are managed. Previous files can be easily downloaded through the version list.
  • Encryption: When encryption is enabled, encryption is provided via SSE-S3 method.
  • Access Control: When access control is used, you can directly enter Public IPs allowed to access Object Storage, or select resources within the same Account allowed to access (Virtual Server, Bare Metal Server, VPC Endpoint, etc.).
  • Replication: Can perform replication to buckets in different locations or the same location.
    • Multiple replication policies can be set
  • Permission Management: By default, Private permission is provided, and Public permission and permission management features are provided.
    • Private Permission: Allows file sharing and downloading only to users who know the authentication key
    • Public Permission: Allows file sharing and downloading to anyone worldwide by accessing the file’s URL
  • Monitoring: Monitoring information such as total file count, data amount (Bytes), and HTTP Method request count can be checked through the Cloud Monitoring service.
  • ServiceWatch Service Integration: Data can be monitored through the ServiceWatch service.

Components

Authentication Key

The authentication key is an essential element that must be created in advance to use Object Storage.
The purpose of using the authentication key is as follows.

  • An authentication key is required to create and access the Object Storage service from Samsung Cloud Platform Console.
  • The API provided by Object Storage is compatible with Amazon S3, and tools using Amazon S3 can be used in the same way. In this case, authentication key input is required, and it is used as a tool to identify users with permissions. For detailed instructions on creating and checking authentication keys, see How-to guides > Create Authentication Key.

Bucket

A Bucket is the top-level folder, and all folders and files exist under the bucket. When you create Object Storage service in Samsung Cloud Platform Console, a bucket is created, and you can then upload folders or files.
Bucket naming rules are as follows:

  • Bucket names must be at least 3 characters and at most 63 characters.
  • Bucket names can only consist of lowercase letters, numbers, periods ., and hyphens -.
  • Bucket names must start with a lowercase letter or number.
  • Bucket names must not have two periods adjacent to each other.
  • Bucket names must not end with a period or hyphen.
  • Bucket names must not have periods and hyphens adjacent to each other.
  • Bucket names must not use IP address format (e.g., 192.168.x.x).
  • Bucket names cannot use the name admin.
  • Bucket names must be unique within an Account/Region.
  • Previously used bucket names can be reused after 1 hour.
Valid Bucket Name ExamplesInvalid Bucket Name Examples
Can be used with bucket names like
  • cpexamplebucket1
  • scp-example-bucket-01
  • my-scp-object-storage
Cannot be used with bucket names like
  • scp_example_bucket(includes underscore)
  • DocExampleBucket(includes uppercase)
  • -scp-example-bucket(starts with hyphen)

Folder

Folders are used to logically group files.
Folder naming rules are as follows:

  • Folder names can consist of Korean, English, numbers, and special characters.
  • Special characters that cannot be entered are as follows:
Special Characters Not Allowed in Folder Names
  • Percent sign%
  • Ampersand&
  • Question mark?
  • Exclamation mark!
  • Less than sign<, greater than sign>
  • Slash/
  • Equal sign=
  • Plus sign+
  • Dollar sign$
  • Pound sign#
  • Backtick
  • Caret^
  • Vertical bar/pipe|
  • Left curly brace{, right curly brace}
  • Left square bracket[, right square bracket]

File

A File refers to data stored in Object Storage and is the same as a regular file.
File naming rules are as follows:

  • File names can consist of Korean, English, numbers, and special characters.
  • Special characters that cannot be entered are as follows:
Special Characters Not Allowed in File Names
  • Percent sign%
  • Ampersand&
  • Question mark?
  • Exclamation mark!
  • Less than sign<, greater than sign>
  • Slash/
  • Equal sign=
  • Plus sign+
  • Dollar sign$
  • Pound sign#
  • Backslash\
  • Backtick
  • Caret^
  • Vertical bar/pipe|
  • Left curly brace{, right curly brace}
  • Left square bracket[, right square bracket]
  • Plus sign+

Folder names and file names are separated by a slash /. The following are examples of valid folder names and file names:

Examples of Mixed Folder and File Name Usage
  • 3scp-example
  • my.happy_photo-2024/20240101.jpg
  • video/2024/video01.wmv
Note
The path length including folder name, file name, and delimiter (/) is limited to 1,024 Bytes (based on UTF-8 Encoding).

URL

You can access Object Storage buckets through URLs. Public and Private URLs are provided, allowing access not only from the same Samsung Cloud Platform environment but also from external internet environments.
The URL structure is composed as follows:

URL Without Account IDURL With Account ID
https://[Representative URL]/[bucket name]/[folder name]/[file name]https://[Representative URL]/[accountId]:[bucket name]/[folder name]/[file name]
ComponentDescriptionExample
Representative URLThe Representative URL can be checked from the URL in Check Object Storage Detailed Information
  • Representative URL includes the region name.
-
accountIdaccount ID
  • If accessing files with Public Access enabled without authentication key (Access Key, Secret Key), account ID input is required; otherwise, access is possible without account ID.
c2ef8be0481d4094af3c6d046e536d25
bucket nameBucket name created by the userbucketname
folder nameFolder name where the file is locatedfolder/folder01/folder02/
file nameFile nameFilename02
Table. Object Storage URL Components

Complete URL information for files can be found in Check File Information.

Constraints

Constraints of Object Storage are as follows:

ComponentDescription
Number of creatable Object Storage servicesUp to 1,000 per region
File name length (including path)1,024 Bytes or less
File upload capacity
  • Console: 3GB or less per uploaded file
  • Upload API: 5GB for single upload operation, 5TB for Multipart
Number of files in bucketUp to 200 million
Table. Object Storage Constraints
Warning
  • It is recommended to store up to 200 million files in a bucket. If exceeding 200 million, severe performance degradation may occur, so manage the number of files.
  • When using S3 Backend Filesystem solutions (ex. s3fs, objectivefs, etc.), it is recommended not to use version management. Performance degradation may occur when using version management.
Note
When executing Amazon S3 API after changing IAM permissions, it may take up to 30 seconds.
Note
  • Korea South3 (kr-south3) region constraints
    • File upload and download functions through Samsung Cloud Platform Console are limited.
    • S3 API/CLI usage using Public URL is limited.
    • However, Private URL access through resources created in Samsung Cloud Platform Console (Virtual Server, etc.) is possible.
  • Korea South1 (kr-south1), Korea South2 (kr-south2) region constraints

Prerequisite Services

Object Storage has no prerequisite services.

1 - Amazon S3 Utilization Guide

Object Storage provides functions such as service creation, list retrieval, folder list retrieval, folder creation, file upload, download, etc., through the Samsung Cloud Platform Console. Additionally, these functions are also provided via an API compatible with Amazon S3. Therefore, tools that use Amazon S3 can be used in the same way.
To use Amazon S3’s utility, you need to create and verify an authentication key. For details, see Create Authentication Key.

Caution

When using the Amazon S3 utility, you must use the following version. If you use a different version, some features may be limited, so be careful.

  • SDK v2: 2.22.x or lower
  • SDK v1: 1.12.781 or less
  • CLI v2: 2.22.x or lower
  • CLI v1: 1.36.x or lower
  • SDK for JavaScript v3 : 3.728.0 or lower
  • SDK for Python(Boto3) : 1.35.x or lower

Amazon S3 API

The list of Amazon S3 APIs supported by Samsung Cloud Platform Object Storage service is as follows.

Reference
For detailed information about the Amazon S3 API, please refer to Amazon S3 API Guide.
CategoryDetailed description
head-bucketBucket Information Lookup
list-bucketsList bucket
get-bucket-versioningBucket versioning query
put-bucket-versioningModify bucket versioning
get-bucket-encryptionBucket encryption settings query
put-bucket-encryptionApply bucket encryption settings
delete-bucket-encryptionDelete bucket encryption setting
copy-objectObject copy, move, rename
put-objectCreate object
get-objectObject download
list-objectsObject list query
head-objectObject detailed view
get-object-aclObject ACL query
delete-objectDelete Object
  • If versioning is enabled, deleting a file adds a Delete Marker to the file and the Delete Marker becomes the latest version
  • If permanent deletion of a file is required, delete by specifying the version ID
list-object-versionsObject version list query
delete-objectDelete object version
presignPUT object Presigned URL issuance
get-bucket-aclBucket public permission check
create-bucketCreate bucket
delete-bucketDelete bucket
get-bucket-corsBucket CORS (Cross OriginResources) configuration check
put-bucket-corsCreate bucket CORS (PUT)
delete-bucket-corsBucket CORS Delete
put-bucket-taggingBucket tagging creation
get-bucket-taggingBucket tagging query
delete-bucket-taggingDelete bucket tagging
put-bucket-websiteCreate bucket website
get-bucket-websitebucket website view
delete-bucket-websiteDelete bucket website
get-bucket-policy-statusBucket policy status query
put-bucket-aclCreate bucket ACL
create-multipart-uploadMultipart upload creation
upload-partMultipart upload execution
complete-multipart-uploadMultipart upload completed
list-multipart-uploadsMultipart upload list
abort-multipart-uploadDelete incomplete multipart upload
put-object-taggingObject tagging creation
get-object-taggingObject tagging query
delete-object-taggingObject tagging Delete
list-objects-V2Object query (v2)
put-object-aclObject acl creation
list-partsParts lookup
put-public-access-blockPublic access block creation
get-public-access-blockpublic access block lookup
delete-public-access-blockpublic access block delete
put-bucket-lifecycleCreate bucket lifecycle (only Expiration rule can be used)
get-bucket-lifecycleBucket Lifecycle Query
delete-bucket-lifecycleBucket Lifecycle Delete
put-bucket-replicationModify bucket replication policy
  • When using replication-configuration, the following items need to be checked
    • Role: IAM SRN input required
    • Rules > Destination’s Bucket: Bucket SRN input required
    • If Rule ID is not entered, it is automatically generated with a random value
    • Rule Priority is not applied, so any entered value has no effect (can set all to 1)
    • When changing Rule ID, a new policy is created (the existing policy is deleted)
get-bucket-replicationGet bucket replication policy
delete-bucket-replicationDelete bucket replication policy
Table. List of Amazon S3 supported APIs

Amazon S3 CLI

To use Amazon S3 with the AWS CLI, please refer to Amazon S3 CLI Guide.

Amazon S3 SDK for Java

To use the Amazon S3 SDK for Java, please refer to Amazon S3 SDK Guide.

Note
For SDK guides and Rest API guides for other languages, please check the AWS official website.
Note
  • For using the Amazon S3 SDK, refer to the required region parameter below.
    • Korea West (kr-west1) case: kr-west
    • Korea South 1,2,3(kr-south1,2,3) case: kr-south
  • region parameter is for reference only, and the actual region is distinguished based on the URL.
Note
  • South Korea South 3 (kr-south3) region constraints
    • Samsung Cloud Platform Console through file upload and download functionality is limited.
    • Use of S3 API/CLI via Public URL is restricted.
    • However, access to Private URLs through resources (such as Virtual Server) created in the Samsung Cloud Platform Console is possible.
  • South Korea South1 (kr-south1), South Korea South2 (kr-south2) region constraints

2 - Monitoring Metrics

Object Storage Monitoring Metrics

The following table shows the monitoring metrics of Object Storage that can be checked through Cloud Monitoring. For detailed usage of Cloud Monitoring, please refer to the Cloud Monitoring guide.

Metric NameDescriptionUnit
ObjectsNumber of objects stored in a bucketcnt
Bucket UsedAmount of data stored in a bucket (bytes)bytes
Requests [Upload Avg]Average upload usage per bucketbytes
Requests [Download Avg]Average download usage per bucketbytes
Requests [Total]Total number of HTTP requests executed on a bucketcnt
Requests [Get]Number of HTTP GET requests executed on objects in a bucketcnt
Requests [Head]Number of HTTP HEAD requests executed on objects in a bucketcnt
Requests [List]Number of LIST requests executed on objects in a bucketcnt
Requests [Post]Number of HTTP POST requests executed on objects in a bucketcnt
Requests [Put]Number of HTTP PUT requests executed on objects in a bucketcnt
Requests [Delete]Number of HTTP DELETE requests executed on objects in a bucketcnt
Table. Object Storage Monitoring Metrics

3 - ServiceWatch metric

Object Storage sends metrics to ServiceWatch. The metrics provided by basic monitoring are data collected at a 1-minute interval.

Reference
To check metrics in ServiceWatch, refer to the ServiceWatch guide.

Basic Indicators

The following are the basic metrics for the namespace Object Storage.

Performance ItemDetailed DescriptionUnitMeaningful Statistics
Table. Object Storage Basic Metrics