关于云计算:你用对了么对象文件网关-VS-分布式文件存储

4次阅读

共计 2070 个字符,预计需要花费 6 分钟才能阅读完成。

在近期的文章留言中,咱们看到一个很好的发问能够作为话题一起探讨。无关基于对象的两类文件存储,一类是“对象文件网关型”文件存储 ,即在对象存储的根底上提供文件接口,反对用户业务以文件的形式去应用对象存储。 另一类则是分布式文件存储,即对象存储的应用只是整个文件系统性能的一部分,这种文件系统自身的性能是残缺的,且同时反对对象存储,来满足某些业务需要。针对这两类存储产品一些同学存有纳闷,比方:

  • 纳闷一:产品架构的设计思路上到底有何不同?
  • 纳闷二:对象文件网关 VS 分布式文件存储架构的优劣势体现在哪里?
  • 纳闷三:这 2 种产品架构适宜怎么的利用场景和业务?

如果凑巧你关注的也是以上这些问题,心愿这篇技术科普文能够很好地帮忙到你,也欢送大家留言。

家喻户晓,存储系统个别分为块存储、对象存储和文件存储三种。其中文件存储的应用最为宽泛,小到个人电脑、家用 NAS,大到传统 HPC、大数据平台、AI 等等,这些都是以应用文件接口为主。近几年,得益于存储空间大、成本低的劣势,对象存储扮演着越来越重要的角色。但用户业务往往不能间接应用对象存储,于是市面上呈现了一些理论应用的是对象存储但对外提供文件接口的号称文件存储的计划。

“对象文件网关型”文件存储,个别架构上能够划分为客户端、元数据服务和数据服务三大块:

1、客户端:个别都是基于 fuse 实现,长处是简略,毛病是会有肯定性能损耗(可参考论文 FAST’17 To FUSE or Not to FUSE,点击浏览原文获取链接)。

2、元数据服务:根本都是应用第三方数据库,比方 mysql、redis、tikv 等。

  • mysql 没有强统一集群计划,性能较差,因而个别不会选用。
  • redis 以性能高著称,但内存占用极高,且有单点数据危险,不能反对较大数据规模。
  • tikv 是强统一的分布式 kv,相对而言是个不错的抉择。但把握和保护 tikv 颇有挑战。

3、数据服务:间接应用对象存储,比方 Amazon S3、阿里云 OSS 等。

能够看出,对象文件网关架构深度应用和依赖于第三方零碎,它将简单的 data io 交给对象存储,将更简单的 meta io 交给第三方数据库,比拟取巧,但也确实不失为一种无效的抉择。对象网关文件存储人造取得了这些劣势:

  • 容量有限,用户能够在对象存储中寄存海量数据。
  • 老本绝对较低,对象存储往往用价格更低的硬盘(如大容量机械硬盘),且应用 EC 等更节俭空间的数据冗余算法。
  • 肯定的吞吐能力。

也正因为这种架构设计,为“对象文件网关型”文件存储带来一些性能上的限度,最为突出的是随机写性能差,究其原因一是对象不反对批改,二是用户业务往往须要写数据。因而不同的对象文件网关零碎,采取了不同的应答办法:

  • 办法一:躲避须要写入,尤其是随机写较多的业务。拥抱只读为主、数据量很大的业务,比方视频备份等。
  • 办法二:利用本地盘做数据缓存。不过这又引入了新的问题,次要是本地盘不足冗余,也不不便数据共享。

那么,分布式文件存储系统的体现又是怎么的呢?首先它是基于 x86 架构设计的一款分布式文件存储系统,反对支流对象存储,个别用户会应用两种典型性能:数据分层和跨云数据整合。接下来,咱们逐个介绍下:

数据分层

定义热层在本地,冷层在对象存储。被读写的数据将主动落在热层,而未被拜访的数据,依据策略被断定为冷数据后,将被主动放到冷层,冷热层数据流动齐全对用户通明。

劣势:

这种设计思路能够了解为热层为数据读写提供极高的性能。比方 GPU 计算集群对存储性能要求极高,则热层能够部署 RDMA、NVMe 等高性能硬件去满足业务需要。而冷层又能够存储海量的冷数据,用以节俭存储老本。冷热层数据通明流动,做到业务无感知。用户既失去了热层高性能,同时又失去了冷层的大容量低成本。

跨云数据整合

私有云对象存储提供了十分优良的可拜访性,因而咱们能够基于这一特点,为文件系统实现数据在多云间灵便流动。比方以下列举就是咱们常常会遇到的一种场景:

1、用户在边缘节点产生数据,通过规范对象接口和工具将数据上传到私有云对象存储。

2、用户在计算中心 A

  • 部署文件存储。
  • 建设和对应对象数据集的关联,将对象疾速地映射到文件系统中。
  • 用户读取和计算对象映射后的文件数据。数据按需加载,即拜访到某对象的数据时,才去读取这个对象的相干数据区段。
  • 计算实现后,用户能够抉择勾销关联,上传新产生的数据。

3、用户在计算中心 B 时,也能通过数据链通性能,去关联和应用边缘节点产生的数据集。同时也能够去买通和应用计算中心 A 产生和上传的数据。

接下来,通过一张比照表来看下 对象文件网关 分布式文件存储 这两种架构的区别和所实用业务场景。

综上剖析和探讨,咱们能够看到两种文件存储的设计思路外围以及其特点还是有很大的不同,简略说:

对象文件网关:架构简略,实现简略,但随机写是硬伤。

分布式文件存储:热层能提供高牢靠和高性能,同时利用对象来提供大容量和低成本。这种架构相比对象文件网关实现起来要简单很多。

在客户业务场景方面,对象文件网关更实用于中小型只读的 AI 场景客户;分布式文件存储适宜的场景更通用全面,如果是大型的 AI / HPC 场景,那么分布式文件存储是最佳抉择。

正文完
 0