英语原文共 16 页,剩余内容已隐藏,支付完成后下载完整资料
英文文献翻译
并行文件系统BeeGFS的元数据性能评估
摘要
本文的范围是评估并行文件系统BeeGFS的元数据性能。我们研究了三种不同的情况。在第一个中,我们比较了不同后端文件系统的性能,使用以下性能指标在其中存储BeeGFS 元数据:文件创建率,文件读取率和文件删除率。我们正在使用的文件系统是ext4,xfs和btrfs,此外我们使用了一个单独的HDD和一个单独的SSD作为后端运行测试。
第二,我们研究了在BeeGFS存储集群中扩展元数据服务器数量时BeeGFS是如何扩展的。由于BeeGFS对对象和元数据具有完全分布式的方法,因此经常会出现一个问题,即如何扩展以及需要做什么才能获得一定的性能。我们的目标不是评估硬件本身,而是评估文件系统的体系结构。我们关注两个关键的性能指标:文件创建率和文件统计率。将有两组不同的测试,第一组测试评估了不同的元数据目标的行为,而第二组测试则显示了如何通过添加更多的元数据服务器来扩展性能。
第三,我们将评估一个固定大小的系统在不同数量的客户机和不同文件大小下的行为。
关于Fraunhofer
Fraunhofer是欧洲最大的面向应用程序的研究组织。Fraunhofer在德国设有66个研究所,并在欧洲,美国和亚洲设有办事处。 这些研究所在健康,能源,环境,通信和信息技术等不同领域工作。他们的研究专注于应用科学,使技术易于应用和创造新产品。这是与大学和其他研究机构紧密合作完成的,通常是作为行业合作伙伴的合同研究。位于凯撒斯劳滕(德国)的弗劳恩霍夫工业数学研究所(ITWM)专注于高性能计算(HPC),并为弗劳恩霍夫技术中心和其它研究所提供高性能计算(HPC)。
关于ThinkParQ公司
ThinkParQ是Fraunhofer HPC衍生公司,由BeeGFS背后的一些关键人员于2013年底创立,旨在为BeeGFS客户提供专业支持、服务和咨询。ThinkParQ与Fraunhofer通过独家合同紧密相连,该公司正在竭尽全力使文件系统在不同的市场中得到采用。ThinkParQ是BeeGFS的第一个联系地址,它将最终用户连接到解决方案的整体解决方案、组织活动、参加展览和贸易展览,并与系统集成商紧密合作。
有关BeeGFS的所有请求都应首先提交给ThinkParQ GmbH。
目录
1.要使用的硬件平台
第一种方案是在由单个存储服务器组成的系统上进行基准测试的,该服务器具有:
- 两个Intelreg;Xeonreg;CPU E5-2650v2 CPU,时钟速度为2.60GHz,每个CPU 8个内核(因此总共16个)–启用了超线程,
- 64 GB的DDRIII内存,
- 1 x英特尔reg;SATA II SSD“ SSDSC2MH250A2”,
- 1个SAS 15k HDD驱动器,以及
- Mellanox ConnectX III InfiniBand卡,通过单个FDR x4连接到InfiniBand交换机(56 Gbps)。
作为客户端,我们使用四个节点,每个节点:
一个时钟速度为3.30GHz的Intelreg; Xeonreg;CPU E3-1230 v3 CPU,32 GB的DDRIII内存,以及Mellanox ConnectX III InfiniBand卡,具有到InfiniBandswitch的单个FDR x4连接(56 Gbps)
第二种情况和第三种情况的所有基准都是在由40个服务器组成的系统上得出的。 每个服务器都配备了:
- 两个Intelreg;Xeonreg;E5-2680v2 CPU,时钟速度为2.8 GHz,每个CPU 10个内核(因此服务器中为20)–启用了超线程,
- 64 GB的DDRIII内存,
- 4个SATA III SSD(10个服务器,每个SSD 1TB – 30个服务器,每个256GB)连接到SAS2背板,并由Dell PERC H310控制器分别控制,以及
- 具有与InfiniBand交换机(56 Gbps)的单个FDR x4连接的Mellanox ConnectX III InfiniBand卡。
对于测试,我们将使用(最多20个)这些服务器作为元数据或对象数据服务器,其余节点用作客户端。具体的设置见各个部分中的说明。
由于测试实验室中硬件的可用性和数量的变化,这些测试中使用的硬件有所不同。在比较各个基准的绝对结果时,这一点很重要。另外,测试是彼此独立执行的,因此所使用的基准在一些细节上有所不同。
2.如何衡量元数据性能
为了评估元数据的性能,我们将使用一个名为mdtest的开源工具。Mdtest在文件和目录上运行一组测试(可配置)。该工具使用MPI编程,并且可以在大量节点上与大量进程一起运行。因此,它非常适合我们的用例,因为它可以模拟大量访问并行文件系统的客户端。
衡量元数据性能通常并不容易。与测量顺序带宽甚至随机IOPS相比,还有更多参数可能会极大地影响性能。
在各个测试中,我们将使用不同数量的进程以及不同数量的文件和目录。在每个部分的开头详细介绍了这些设置,并且我们解释了为什么做出某些选择的原因。
3.第一种情况:比较不同的后端文件系统
BeeGFS元数服务器正在使用现有的本地Linux文件系统来存储其自己的数据。这使用户可以选择他们最了解的任何文件系统。但是,仍然存在问题,这会对性能产生什么影响。
我们将比较ext4,xfs和btrfs作为单个快速旋转HDD和单个SSD上的基础文件系统。我们选择这些是因为它们是当前Linux发行版的默认选择,并且被广泛使用。我们总共总结了六个测试,将在下一节中进行比较。
作为测试,我们将在以下命令行中使用mdtest:
mpirun –np lt;no_of_clientsgt; mdtest -d /beegfs/ -i 2 -I lt;no_of_filesgt;-z 1 -b lt;no_of_dirsgt; -L -u –F
其中no_of_clients从1缩放到128,no_of_dirs的计算方法是将512除以no_of_clients,以在测试中创建恒定数量的目录/文件。在各个测试中,no_of_files固定为1024。对于完整的MPI启动,您将必须以适合所使用的MPI版本的方式添加主机名或计算机文件。
-d 用于在其中创建文件和目录的目录
-i 2 将整个测试运行2次,我们将使用输出的“平均值”结果,这是两次2次运行的平均值(因为标准偏差相对较小)
-I lt;nogt; 定义每个进程要创建的文件数。
-z 1 每个进程将创建1级深度的目录结构
-b lt;nogt; 每个进程将创建一个目录结构。
-u 每个进程将在其自己的子目录中工作
-L 文件仅在每个进程创建的目录树的叶级别上创建
-F 这仅使mdtest的面向文件的测试得以执行
首先,让我们看一下在HDD上运行时这三个文件系统的结果。对于较低的进程数(1、4和8),ext4和btrfs的性能没有太大不同。两者的创建速度均达到20k至22k个/秒。另一方面,xfs显示它的缩放比例比其他两个要小得多,并且绝对创建速率也较小(约10k个/秒)。
扩展进程数量会进一步在btrfs和ext4之间造成更大的差距。 尽管可以将ext4的创建速度提高到接近30k个/秒,但是当越来越多的客户端同时创建文件时,btrfs的性能会下降,而与使用的HDD或SSD无关。请注意,“btrfs ssd”的绿色线后面几乎看不到“btrfs hdd”的深蓝色线(浅蓝色的线表示“ext4 hdd”)。
另一方面,xfs保持在已经针对8个客户端显示的性能水平,并提供了相当稳定的10.5至11k个/秒。
在使用SSD的情况下,我们注意到两件重要的事情:
btrfs似乎并没有在测试结果中提供SSD的性能优势(它在从SSD和从HDD上运行时基本上表现相同),其原因尚不清楚。
可以看到的第二件事是,在SSD上运行文件系统时,ext4和xfs的性能都得到了提高。xfs可以推至接近30k个/秒,几乎是HDD的三倍,而ext4扩展到45k个/秒,比以前增加了60%。
文件读取操作结果与为ext4和xfs创建文件非常相似。从HDD运行时,xfs保持相对稳定的性能水平,并通过使用SSD作为存储来最大程度地提高了性能。ext4从HDD表现出稳定的性能,并且在从SSD运行时可以进一步提高性能。
Btrfs的行为与创建测试的行为不同。随着处理数量的增加,它的性能不会降低,我们看到HDD和SSD作为后端存储设备之间存在明显的区别。
我们的最后一个测试是再次删除创建的文件,其行为与创建测试非常相似。Btrfs对于越来越多的进程显示出较差的性能,并且没有从SSD运行的附加性能。xfs和ext4的行为大致与以前相同。
测量的结论是,如果要追求最佳元数据性能,则ext4是最佳选择。此外,SSD可以稍微提高元数据操作的性能。特别是对于现实情况中的混合工作负载,SSD所显示的优势远远大于本文所进行的微基准测试所显示的优势。有了这一发现,强烈建议将SSD用于元数据。
4.第二种情况:扩展元数据性能
在这种情况下,我们将检查通过添加更多用于存储元数据的SSD可以将单个服务器推入多远,并且我们将元数据服务器的数量扩展到最多20台计算机。目的是为了展示BeeGFS是如何扩展的,以及可以实现什么绝对性能。
4.1单个服务器的元数据性能
第一组测试是评估单个服务器的性能。我们首先在单个RAID0配置中使用服务器中的4个SSD来构建非常快速的MetaDataTarget(MDT)。单个元数据服务器(MDS)在计算机上运行,它将使用分布在20个物理核心上的160个工作线程。文件数将保持不变,并且客户端进程数将按比例缩放。
使用的命令行是:
mpirun –np lt;no_of_clientsgt; mdtest -d /mnt/beegfs/ -i 3 -I lt;no_of_filesgt; -z 2 -b 8 -L -u –F
其中no_of_files被计算为生成总共840960个文件。对于完整的MPI启动,您将必须以适合所使用的MPI版本的方式添加主机名或计算机文件。
具体可使用的选项如下:
-d 用于在其中创建文件和目录的目录
-i 3 运行整个测试3次-我们将使用三次运行输出的“平均值”作为结果
-I lt;nogt; 定义每个进程要创建的文件数。该数字设置为所有进程中文件总数达到840960的值。
-z 每个进程将创建一个2级深的目录结构
-b 每个进程将创建一个目录结构,目录宽度为8
-u 每个进程将在其自己的子目录中工作
-L 文件仅在每个进程创建的目录树的叶
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[234364],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。