因此,我被困在一个角落,我有一个存储项目,限制在24个主轴,并需要大量的随机写入(相应的读取侧是纯粹的顺序)。需要在我的驱动器上的每一点空间,~13 to总数在一个n-1 raid-5,并必须快速,超过2GB/s有点快。
显而易见的答案是使用条形/凹(Raid-0/1),或者更好的是使用raid-10代替raid-5,但由于我无法控制的原因,这是不允许的。因此,我在这里寻求帮助,以获得一个次优的配置是尽可能好的。
该阵列建立在直接连接SAS-210Krpm驱动器上,由一个带有4GB缓存的槟榔18xx系列控制器支持。64k数组条纹和4K条带对齐XFS文件系统,有24个分配组(以避免raid 5的一些损失)。
我的问题的核心是:在与6锭/AG的相同的装置中,我在写上看到了一个接近磁盘的性能,每轴~100 my /S,在12个主轴上,我看到它下降到~80 my/S和24 ~60 my/ at。
我希望在分布式奇偶和匹配AG的情况下,性能应该与纺锤体#一起缩放,或者在小的纺锤体计数时更差,但是这个数组却恰恰相反。
我错过了什么?
Raid-5性能评估应该使用#纺锤吗?
非常感谢您的回答和任何想法、意见或指导。
--Bill:提高RAID性能是我找到的另一个相关的线程,它讨论了答案中的一些同样的问题,尽管它仍然让我没有一个关于性能扩展的答案。
发布于 2012-04-11 12:43:03
您的限制是您的raid控制器。随机写入就像一个大缓存,而基于奇偶校验的突袭就像一个快速奇偶计算器.在本地附加控制器上,向基于奇偶校验的RAID阵列(如RAID 5或6)添加的磁盘越多,每个主轴的性能就越低。为了避免这个问题,大型直接附加存储(超过8个驱动器)倾向于raid 10。使用基于奇偶校验的RAID (5或6)的唯一原因是受益于更高的可用空间比率。缺点是,如果你失去了一个驱动器,重建将花费更多的时间,如果RAID是一个大的。
如果您的硬件是固定的,并且您需要使这个工作尽可能好,那么您最好的性能将是从RAID 10,然而,您将失去一半的可用空间。而且,虽然一开始它看起来更有弹性,因为您可以在没有故障的情况下丢失多达一半的驱动器,但是如果您丢失了错误的两个驱动器,您仍然可能丢失数据。
本地附加存储的另一个选项是ZFS。我并不声称知道它的内部工作原理,但我的理解是它将完全忽略RAID卡并在底层磁盘上工作。如果您适当地配置它,它可能对小写的奇偶性有一个较低的惩罚。
如果您有钱来解决这个问题,您将很好地投资于一个更好的RAID控制器。有更多缓存和更快处理器的东西。如果您决定使用基于奇偶校验的RAID,最好是进行多次攻击--最好是3个组,每个组有8个纺锤体。
比这更好的是获得一些外部存储:它有一个存储控制器来处理所有的缓存和奇偶校验计算,并且只允许通过SAS或光纤通道访问存储。
发布于 2012-04-10 16:26:23
任何RAID 5都是次优的,24磁盘的R5阵列并不愚蠢,我并不想粗鲁,但是大多数硬件阵列控制器不会让您创建一个24磁盘R5阵列,想想你可能在不知不觉中丢失了多少数据。另外,如果您正在进行任何类型的写作,RAID5或6并不是前进的方向,事实上,添加更多的纺锤体很可能只会减慢速度。
无论是从性能和可靠性的角度来看,您都需要尽快将其转换为RAID 10,这确实是唯一的前进之道,其他任何事情都只是擦亮了一个烂摊子。
发布于 2012-04-10 16:27:30
有哪些不同的广泛使用的RAID级别,以及我何时应该考虑它们?
RAID-5在这种规模上可能会有问题(重建时间,增加阵列失败的可能性)。您的随机写入速度一点也不合理(可能是单个磁盘的带宽),也不会使用纺锤体进行缩放。
https://serverfault.com/questions/378169
复制相似问题