rechen2020
作者rechen2020·2022-06-22 15:55
系统架构师·某大型银行

分布式对象存储在云存储架构框架当中的地位和作用?

字数 2737阅读 1596评论 0赞 3

云存储是指通过集群应用、网络技术或分布式文件系统等功能,将网络中大量各种不同类型的、廉价的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。使用者可以在任何时间、任何地方,透过任何可联网的 设备连 接到“云”上方便地存取数据 。 云存储技术 是 孕育在云计算技术的发展历程之中 ,而 大容量、高可靠、高可用、高扩展、易用性的存储需求, 大大 推动云存储服务的发展和普及。2006年3月,亚马逊(Amazon)推出的亚马逊简易储存服务(Amazon Simple Storage Service,即S3)云存储产品,正式开启了云存储服务的发展。 当前国 内外互联网巨头, 都 推出相应的云存储平台,如亚马逊(Amazon)的S3,谷歌的Google Drive,微软(Microsoft)的Azure,百度云盘, 阿里云OSS,腾讯云COS ,华为云OBS, 360云盘等。

云存储从数据的存储和访问的方式来区分,包括数据块级云存储、文件级云存储和对象级云存储。这三种类型是由 传统的S AN(Storage Area Network , 存储局域网)、 NAS(Network Area Storage , 网络附加存储)和CAS(Content Addressed Storage , 内容 寻址 存储)分别发展而来。

块存储数据是以数据块的形式进行管理,每个数据块只有一个地址, 一旦被一个系统使用,就独占了,不能被共享 。NAS数据是以文件的形式进行管理, 在文件系统一层对外提供服务 , 通过CIFS 或者NFS 协议进行共享 。对象存储是以对象的形式进行管理, 采用扁平化方式,弃用了目录树结构,通过Restful 或 HTTP 接口实现随时随地访问 的 共享 和 高速访问 。这三种云存储类型的区别如下表所示:

分布式 对象存储是为海量 非结构化 数据提供 通过 Key-Value键值查找数据文件的 分布式 存储模式 ,是一种 用户可通过网络 ,以WEB 控制台、API、SDK 和工具等多样化方式随时进行任意格式文件的上传、下载和管理数据 , 具备高扩展性、低成本、可靠和安全的数据存储服务 ,同时还可以通过 CDN 节点对 对象 文件下载进行加速。

分布式 对象存储 的技术是 引入 了 对象元数据来描述对象特征,对象元数据具有丰富的语义 ,另外 引入容器概念作为存储对象的集合。对象存储系统底层基于分布式存储系统来实现数据的存取,其存储方式对外部应用透明。 因此, 存储系统架构具有高可扩展性,支持数据的并发读写,一般不支持数据的随机写操作。对象存储 的 技术成熟,对底层硬件要求不高,存储系统可靠性和容错通过软件实现,同时 h ttp访问接口简单,适合处理海量、小数据的非结构化数据,如:邮箱、网盘、相册、音频视频存储等 。

分布式 对象存储 的架构如下图所示:

其中:

存储空间(Bucket)是用户用于存储对象(Object)的容器,所有的对象都必须隶属于某个存储空间。存储空间具有各种配置属性,包括地域、访问权限、存储类型等。用户可以根据实际需求,创建不同类型的存储空间来存储不同的数据。存储空间 的特征如下:

  • 同一个存储空间的内部是扁平的,没有文件系统的目录等概念,所有的对象都直接隶属于其对应的存储空间。
  • 每个用户可以拥有多个存储空间。
  • 存储空间的名称在OSS范围内必须是全局唯一的,一旦创建之后无法修改名称。
  • 存储空间内部的对象数目没有限制。

    对象(Object)是 对象存 储数据的基本单元。和传统的 P osix 标准文 件系统不同,对象没有文件目录层级结构的关系。对象由元信息(Object Meta),用户数据(Data)和文件名(Key)组成,并且由存储空间内部唯一的Key来标识。对象元信息是一组键值对,表示了对象的一些属性,比如最后修改时间、大小等信息,同时用户也可以在元信息中存储一些自定义的信息 , 对象的生命周期是从上传成功到被删除为止。

    存储类型(Storage Class)提供标准、低频访问、归档、冷归档四种存储类型,全面覆盖从热到冷的各种数据存储场景。其中标准存储类型提供高持久、高可用、高性能的对象存储服务,能够支持频繁的数据访问;低频访问存储类型适合长期保存不经常访问的数据(平均每月访问频率1到2次),存储单价低于标准类型;归档存储类型适合需要长期保存的归档数据;冷归档存储适合需要超长时间存放的极冷数据。 这四种存储类型的特点如下表所示:

    不同 存储类型(Storage Class) 的技术特性是和其功能匹配的,如下图所示:

分布式 对象存储 系统的部署架构通常都支持跨AZ / 跨IDC机房,以及AZ内 / 机房内的故障域隔离,譬如AWS S 3 对象存储系统的部署架构如下图所示:

分布式 对象存储提供 了 五级可靠性架构,通过跨区域复制、AZ之间数据容灾、AZ内设备和数据冗余、存储介质的慢盘/坏道检测等技术方案,保障 了对象 数据的持久性和可靠性 ,其 数据持久性 、 业务连续性 都 远高于传统架构。

分布式 对象存储 的应用场景非常广泛,比较典型的有静态网站托管、云盘、视频点播、视频监控、大数据分析、备份归档等场景。

1) 静态网站托管场景:

终端用户浏览器和APP上的动态数据直接与业务系统进行交互,动态数据请求发往业务系统处理后直接返回给用户。静态数据保存在 分布式对象存储系统中 ,业务系统通过内网对静态数据进行处理,终端用户通过就近的内容分发网络 CDN 节点,直接向 分布式对象存储系统 请求和读取静态数据。

2) 云盘场景:

用户手机、电脑、PAD等终端设备上的动态数据与云盘系统进行交互,动态数据请求发送到企业云盘业务系统处理后直接返回给终端设备。静态数据保存在 分布式对象存储系统 中,业务系统通过内网对静态数据进行处理,用户终端直接向 分布式对象存储系统 请求和取回静态数据。同时, 分布式对象存储系统 提供生命周期功能,实现不同对象存储类别之间的自动转换,以节省存储成本 ,同时 存储容量可随用户数据量的提高而自动扩容 。

分布式 对象存储 系统的架构,有其他组成对象或其他云服务是存在有机联系的。譬如 Openstack 平台架构中,分布式对象存储S wift 提供了镜像系统 Glance 的镜像文件、块存储Cin der 的快照文件、数据库 Trove 的数据库备份文件和大数据 Sahara 的数据及任务JOB的存储服务,另外,Sw ift 自身也使用了认证鉴权 Keystone 、监控Ce ilometer 和门户 Horizon 的能力,如下图所示:

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

3

添加新评论0 条评论

Ctrl+Enter 发表

本文隶属于专栏

最佳实践
不同的领域,都有先行者,实践者,用他们的最佳实践来加速更多企业的建设项目落地。

作者其他文章

相关文章

相关问题

相关资料

X社区推广