服务介绍

什么是对象存储服务

对象存储服务是一种基于对象的存储方案,结合了块存储的高速直接访问磁盘特性和文件存储的分布式共享特性。它能够存储任意类型的数据,包括文件、图片、视频等。用户可以通过对象存储服务管理桶和对象,包括创建、删除桶,上传、下载和分享对象等操作。

相关概念

桶和对象

对象是对象存储服务中数据存储的基本单位,用户上传的数据均以对象的形式存储在桶中。一个对象实际是一个文件的数据与其相关属性信息的集合体,具体包括文件名、元数据和用户数据。文件名是对象在桶内部唯一的标识;元数据是一组键值对,表示了对象的一些属性,比如最后修改时间、大小等信息;用户数据是对象的实际数据内容。

桶是存储对象的容器,所有对象都必须隶属于某个桶。每个桶内部的空间是扁平的,没有文件系统中的目录层级的概念,所有对象都直接隶属于其所在的桶。每个桶都拥有自己的属性,如访问权限,存储容量等。

可通过如下举例理解用户向桶中存取对象的过程:在商场存包时,顾客将包(数据)交给服务员(API接口),服务员给顾客一个凭证(对象URL地址),顾客想要取包时,只需提供凭证,不需要知道自己的包到底是以什么形式存储在哪里。

虽然实际上对象存储中并没有文件系统中的文件和文件夹概念,但为了用户使用方便,通常通过模拟文件夹的形式,将对象等同于文件来进行管理。即通过在对象的名称中增加“/”,例如,对象名称为abc/123.jpg,则abc模拟成文件夹名称,123.jpg模拟成文件名,而实际上完整的对象名称仍然是abc/123.jpg。

AWS S3 Keys

AWS S3 Keys是一种认证鉴权的方式,应用于通过调用S3接口使用对象存储服务。AWS S3 Keys包括Access Key和Secret Key。Access Key用于标识用户,Secret Key是用户用于加密签名字符串和对象存储服务用来验证签名字符串的密钥,必须保密。

实现原理

对象存储服务是基于ONEStor提供的后端存储服务实现。通过Web和存储管理模块,调用ONEStor提供的S3接口创建存储容器。在上传对象时,Web直接调用ONEStor提供的S3接口实现分片上传。

ONEStor存储拥有领先的分布式架构、自动化运维、线性扩展能力、高可靠性、高性能、统一的存储业务等特点。ONEStor软件即基于Ceph开发。Ceph是一个开源项目,一般运行在通用商用硬件上,是一个高性能、高可靠性和高可扩展性的分布式存储系统。关于ONEStor的更多介绍请查阅ONEStor产品相关资料。