更新时间:2022-08-16 GMT+08:00

对象

对象(Object)是OBS中数据存储的基本单位,一个对象实际是一个文件的数据与其相关属性信息(元数据)的集合体。用户上传至OBS的数据都以对象的形式保存在桶中。

对象包括了Key,Metadata,Data三部分:
  • Key:键值,即对象的名称,为经过UTF-8编码的长度大于0且不超过1024的字符序列。一个桶里的每个对象必须拥有唯一的对象键值。
  • Metadata:元数据,即对象的描述信息,包括系统元数据和用户元数据,这些元数据以键值对(Key-Value)的形式被上传到OBS中。
    • 系统元数据由OBS自动产生,在处理对象数据时使用,包括Date,Content-length,Last-modify,ETag等。
    • 用户元数据由用户在上传对象时指定,是用户自定义的对象描述信息。
  • Data:数据,即文件的数据内容。

通常,我们将对象等同于文件来进行管理,但是由于OBS是一种对象存储服务,并没有文件系统中的文件和文件夹概念。为了使用户更方便进行管理数据,OBS提供了一种方式模拟文件夹。通过在对象的名称中增加“/”,例如“test/123.jpg”。此时,“test”就被模拟成了一个文件夹,“123.jpg”则模拟成“test”文件夹下的文件名了,而实际上,对象名称(Key)仍然是“test/123.jpg”。

上传对象时,可以指定对象的存储类别,若不指定,默认与桶的存储类别一致。上传后,对象的存储类别可以修改。

OBS管理控制台上,用户均可直接使用文件夹的功能,符合文件系统下的操作习惯。

对象键命名指导原则

虽然您可以在对象键名称中使用任何UTF-8字符,但是按照以下规则命名有助于确保与其他应用程序的最大兼容性。每个应用程序对特殊字符的分析方式可能不同。以下指导原则有助于最大程度符合DNS、Web安全字符、XML分析器和其他API的要求。

以下字符集通常可安全地用于键名称:

字母数字字符(通常也被称为非保留字符)

[0-9a-zA-Z]

特殊字符(通常也被称为保留字符)

感叹号(“!”)

连字符(“-”)

下划线(“_”)

句点(“.”)

星号(“*”)

单引号(“'”)

左括号(“(”)

右括号(“)”)

以下是有效对象键名称的示例:

4my-organization 
my.great_photos-2014/jan/myvacation.jpg 
videos/2014/birthday/video1.wmv