为什么我的 RAID1 或 RAID10 虚拟驱动器(6 个 SSD)并不比单个 SSD 快很多?

为什么我的 RAID1 或 RAID10 虚拟驱动器(6 个 SSD)并不比单个 SSD 快很多?

我试图弄清楚为什么由 12 个 SSD 构建的虚拟驱动器的性能实际上并不比单个 SSD 驱动器快。

服务器是 IBM x3650 M4,两台 Xeon E5-2643v2 130W 6C 3,5GHz。集成 RAID 控制器 ServerRAID M5110e 具有 BBU 和 1GB 闪存选项。连接了 12 个 SSD“IBM SSD S3500 240GB SATA 6,4cm MLC HS,6.0 GB/s”。

RAID1 或 RAID10 虚拟驱动器是使用 MegaRAID 存储管理器创建的,具有以下属性:不预读、使用 BBU 写回、直接 IO、128k 条带大小。

我使用 ATTO Disk Benchmark 测试了性能,以下是 64k 读/写的结果(对于其他块大小的读/写,性能也不会扩展):

2 drives in RAID1: Write 1969 MB/s Read 2458 MB/s
4 drives in RAID1: Write 1801 MB/s Read 2365 MB/s
6 drives in RAID1: Write 1614 MB/s Read 2381 MB/s
12 drives in RAID1: Write 1544 MB/s Read 2432 MB/s
12 drives in RAID10: Write 1738 MB/s Read 2465 MB/s 

我还订购了 IBM Option

“MegaRAID FastPath SSD 性能加速 MegaRAID FastPath 软件通过利用极低延迟的 I/O 路径来提高控制器的最大每秒 I/O (IOPS) 能力,为基于 SSD 的虚拟驱动器提供高性能 I/O 加速。此功能可提高具有高度随机数据存储访问模式的应用程序(如事务数据库)的性能。通过启用 M5100 系列性能加速器 (90Y4273) 可激活此功能。”

但据我所知,这只能将虚拟驱动程序的性能提高 2 到 3 倍。

我想知道控制器是否是瓶颈?

我现在使用 IOmeter 进行了测试,数据集为 20 GB,一个工作程序,64 KiB 100%读取,0%随机,运行五分钟:

RAID1 of 2 drives: Total IOPS 6917, Total MBPS 453
RAID1 of 4 drives: Total IOPS 9121, Total MBPS 597
RAID1 of 6 drives: Total IOPS 11186, Total MBPS 733
RAID1 of 8 drives: Total IOPS 12959, Total MBPS 850
RAID1 of 10 drives: Total IOPS 14677, Total MBPS 962
RAID1 of 12 drives: Total IOPS 16351, Total MBPS 1071 
RAID10 of 12 drives: Total IOPS 18390, Total MBPS 1205
RAID0 of 6 drives: Total IOPS 16140, Total MBPS 1057
RAID0 of 12 drives: Total IOPS 19562, Total MBPS 1282
RAID5 of 12 drives: Total IOPS 18988, Total MBPS 1244

Tests with 50% reads, 50% writes:
RAID5 of 12 drives: Total IOPS 4621, Total MBPS 303
RAID10 of 12 drives: Total IOPS 4967, Total MBPS 325
RAID10FP of 12 drives: Total IOPS 11803, Total MBPS 773 

RAID10FP 是购买的 FastPath 选项激活时的测量值。

答案1

您的 iometer 结果看起来与您的预期一致。我认为测试工具/协议是这里的问题,并且您的阵列没有任何问题。不过,请务必使用 FastPath,因为它确实可以提高 SSD 阵列性能...

答案2

这里的问题是 LSI 控制器的写回功能,这只对 HDD 有意义。对于 SSD,始终使用直写,不预读和 DirectIO(即使使用 RAID5)。然后,您会看到更多 SSD 的预期性能......

答案3

您的卡无法以足够快的速度发送数据,从而无法使驱动器饱和。也就是说,虽然 SSD 总体上速度很快,但它们在随机寻道读取时速度极快。尝试使用小块随机读取运行基准测试,并测量您可以获得的 IO/s 数量。

相关内容