文件系统流量注意事项
- 5 分钟
目标 IOPS、吞吐量和延迟数字是重要的值。 但为了优化性能,还需要确定 HPC 工作负载与文件系统的交互方式。 下一步是量化文件系统需要支持的流量规模和混合。
流量组合注意事项
流量组合 是指 HPC 工作负荷流量的构成,具体如下:
- 读取流量与写入流量的比率。 (例如,100% 读取,50% 读取和 50% 写入,100% 写入。)
- 随机读取/写入与顺序读取/写入。
- 检查点和快照。
- 并发。
- 文件数量和大小。
在本单元的其余部分中,我们将了解这种流量类型的混合如何影响存储选择。
读取流量、写入流量与创建/删除
读取和写入操作同样消耗 IOPS。 但是,你选择的文件系统可能会将高可用性应用到传入写入流量,这转化为速度较慢但可复原的写入吞吐量。
如果 HPC 工作负荷执行大量元数据密集型作,性能可能会受到影响。 例如,创建文件、重命名目录结构或删除文件。 创建文件可能需要多个操作。 (检查文件是否存在、创建文件句柄、更新目录条目等。
HPC 工作负荷可能主要侧重于数据转换,因此写入流量可能很大。 在这种情况下,需要确定写入性能的优化优先级。
随机流量与顺序流量
应用程序访问决定了工作负载可能需要的读取和写入流量模式类型。
HPC 工作负荷可能高度并行,许多计算机从共享文件系统请求相同的数据。 或者,它们可能是唯一且序列化的,并且具有唯一和随机的数据访问模式。 顺序流量性能大于随机流量。 顺序流量的示例是一台或多台计算机加载二进制库或大型图像或视频文件。 随机流量的示例包括对单个文件或多个文件的不同字节范围的请求,而不是读取整个文件。
检查点和快照
工作负载经常会设检查点。 在检查点过程中,应用程序及其数据的状态会被复制到持久存储,然后继续处理工作负荷。 检查点用于在无需完全作业重启的情况下恢复长时间运行的工作负载。 检查点还可与快照结合使用。 快照是指在某个时间点拍摄的文件系统的只读副本。 检查点可以被看作是特定于应用程序或依赖于应用程序的,而快照则在文件系统级别具有相关性。
检查点和快照都使用 IOPS 和存储。 因此,它们会影响文件系统的总体性能,具体取决于其频率和所涉及的数据量。
并发
选择文件系统时,并发客户端和线程数是需要考虑的另一个因素。 许多 HPC 工作负载在作业启动和结果处理阶段需要显著的并发性,可能会涉及数百或数千个线程。 例如,作业可能会跨一百台 16 核计算机进行初始化,每个核心运行一个或两个并发线程。 在这种情况下,线程并发性可以是 1,600 到 3,200 个线程。 这些线程可能都在读取作业继续之前所需的二进制文件(库、工具链等)。 为了最大程度地减少作业运行时,基础存储系统需要能够快速响应这些读取请求。
同一作业可能不再需要任何并发访问。 或者,它可能需要突发地访问更多文件数据,或者将中间结果写出,以供作业中的其他线程读取。
文件数量和大小
选择文件存储时,还需要考虑文件的数量和平均大小。 如果 2 TB 的数据包含 1000 GB 文件(而不是 1 万 200 MB 文件),则消耗 2 TB 数据的工作负荷具有不同的性能特征。 尤其是在 10000 个文件嵌套在深层目录结构中时。
建议识别最有可能的数据工作集。 工作集是可能需要的最大文件数量和文件大小。 尝试确定最大和平均工作集定义,并使用这些最大值来指导规划。
定义工作集并不总是很容易,特别是对于一个环境,而不是单个 HPC 工作负载来说。 例如,可能需要有一天针对静态数据集创建小型模拟。 第二天,你可能需要进行纵向扩展,以便执行具有中间输出和检查点的更大分析。