对象(Object)是对象存储存储数据的基本单元。
对象由元信息(Object Meta)、文件名(Key)和数据(Data)组成。
- 对象元信息是一对键值对,表示了对象的一些属性,比如最后修改时间、大小等信息,同时用户也可以在元信息中存储一些自定义的信息。
- 对象由存储空间内部唯一的Key来标识。
- 数据是文件本身的数据内容。
与平常的文件系统不同,对象存储没有文件目录层级结构的关系。为了用户能更好地使用和管理自身的数据,媒体存储通过对对象名称上最后一个"/"进行划分,把最后一个"/"前的名字划分为文件夹名,文件夹名也会根据路径的"/"来划分为多个层级,最后一个"/"之后则划分为该文件夹名下的文件,并且在用户控制台以及XstorBrowser的操作界面对这部分对象进行特殊显示处理,展示为文件夹样式,便于用户进行数据管理。
例如:一个对象命名为:"aaa/bbb",则aaa在页面展示被模拟成文件夹,如下图:
bbb.jpg则是aaa文件夹下的文件名,而在底层上则只是一个对象名(Key)为"aaa/bbb.jpg"的对象。
对象命名规范和指导
- 使用UTF-8编码。
- 命名长度范围为1~1023。
- 推荐可用于文件名字符集为[0-9a-zA-Z]、感叹号"!"、左括号"("、右括号")"、连字符"-"、下划线"_"、星号"*"、单引号"'"、句号"."。
- 如果上传的对象名带有中文,在访问或请求这个对象时中文部分将会按照URL Encode规则把中文转换为百分号编码。
- 不能以正斜线(/)或反斜线(\)开头。
- 区分大小写。