并行文件系统

已完成

NFS 从企业中演变而来, 旨在处理规模不断扩大的并发文件访问。 但使用 NFS 解决方案所能获得的性能和规模是有上限的。 还有几类工作负载需要对文件进行更大程度的并行访问,包括让多个并发流程能够写入文件的某个部分。

在过去二十年中,大规模读取和写入的需求急剧增长。 并行文件系统解决方案是加速最大高性能工作负载的主要选择。 并行文件系统源自超级计算中心。 它们现已针对各种场景进行了广泛部署。 例如大型石油天然气公司使用的震波图分析和解释解决方案,以及基因组数据的二级/三级分析。

本单元介绍了对并行文件系统的轻型处理。 如果已在运行此类工作负载,则很可能很熟悉这些解决方案的驱动程序、需求和体系结构。 在服务 NFS 的分布式 NAS 解决方案与并行文件系统之间存在一个灰色地带。 使用并行文件系统可能更好地满足你的要求。

完成本单元后,你将更加熟悉并行文件系统的主要功能。

并行文件系统历来都是一类完整的功能,它要求深入了解应用程序 I/O。 此处提供的信息是为了帮助了解,而不是介绍专业知识。

分布式 NAS (NFS) 与并行文件系统

分布式 NAS 和并行文件系统都是共享文件系统。 多个客户端并行读取文件,可写入和锁定文件,而且可修改元数据等等。

这两个系统都可缩放,方式是添加或更新存储硬件技术,添加前端服务器来扩展客户端访问,或者提高网络连接性。

比较网络附加存储与并行文件系统体系结构的关系图。

并行 I/O

并行文件系统将文件拆分到分散的块或条带中,并将这些文件分布到多个存储服务器。 存在可对数据进行条带化的分布式文件系统。 但区别在于,并行文件系统随后会通过与托管存储服务器本身进行通信直接向客户端公开这些条带。 通过条带化,可在标准的分布式 NAS 系统上进行大量并行 I/O。 在最常见的横向扩展 NAS 环境中运行的 NFS 客户端必须通过单个服务器访问文件。 如果并发请求数超过了服务器可处理的数量,客户端访问单个服务器会引发问题。 此外,并行文件系统并行访问和条带化的方法使它们非常适合需要跨大量并发客户端访问大型文件的工作负载。

下面是三个主要并行文件系统:

  • IBM 的 GPFS(称为 Spectrum Scale)
  • Lustre(已开源,具有一些商业实现)
  • BeeGFS

这些系统通过不同的方式实现了并行 I/O。 GPFS 使用称为“网络存储设备 (NSD)”的服务器,这些服务器与高性能存储区域网络 (SAN) 连接。 因此,GPFS 服务器将原始磁盘 I/O 作为其后备存储。 BeeGFS 的很多体系结构组件与 Lustre 的相同,但它也具有可靠的分布式元数据体系结构。 BeeOND 是“BeeGFS On Demand”的缩写,可实现在每个客户端上使用存储的按需 BeeGFS 环境。 此类临时文件系统环境可用于突发缓冲。

但在这两种情况下,并行文件系统都可通过添加更多存储服务器来进行扩展,转而为客户端提供更多并行 I/O。 并且客户端总数可能很大,可达到数万个。

元数据

NFS 客户端与 NFS 服务器直接交互,后者为客户端提供元数据信息并检索数据。 你需要根据客户端数量和流量的预期速率调整服务器组件大小。 此组件可能成为瓶颈。 NAS 供应商可以实施一些元数据优化,但是大多数 NFS 实现无法识别单独的元数据服务。

相比之下,并行文件系统通常会实施策略来更好地对客户端数据访问进行缩放。 例如,Lustre 可实现单独的元数据服务器 (MDS)。 客户端检索该系统中的所有元数据。 此外,Lustre 客户端能够直接访问给定文件所在的存储服务器,并且可以读取/写入多个并行线程。 通过此方法,体系结构可根据部署的存储服务器的数量来缩放带宽。

块大小

我们之前已在 NFS 的上下文中介绍过块大小。 并行文件系统块大小可能大于 NFS 块大小。 NFS 客户端的默认 rsize/wsize 通常是 64,000。 例如,Lustre 的块大小以 MB 为单位。 大小更大具有两个影响。 首先,在并行文件系统中读取/写入大型文件时性能优异。 但文件大小较小而文件数量较多时,并行文件系统的优势并不大。

复杂性

运行 NFS 的分布式文件系统解决方案易于设置和运行,适用于常见用例。 与其他任何系统一样,可调整它们来提高性能,包括根据工作负载调整客户端服务器块的大小 (rsize/wsize)。

并行文件系统通常在大规模环境中针对复杂的工作负载进行操作。 它们更有可能需要配置和调整来确保有足够的性能和规模。

部署注意事项

Azure 提供多个独立的并行文件系统产品/服务。 你可转到 Azure 市场以查看选项,包括 BeeGFS 和 Lustre。 (搜索 Whamcloud。)还可在标准 Linux 虚拟机上安装 Lustre,或使用 Azure 快速入门网站上的 Azure 资源管理器 (ARM) 模板。

知识检查

1.

哪个选项反映了并行文件系统的最佳使用方式?