我需要为几个VPS设置一个小的dedi。 显然IO越多越好。 鉴于这些条件,你会select什么? Raid1中的2个SAS 15k磁盘,或RAID 10中的4个SATA 7.2k?
如果我使用软件或硬件RAID,答案会改变吗?
我已经回答了这些问题,因为希望它更有意义。
如果我使用软件或硬件RAID,答案会改变吗?
首先,不要使用fakeraid如果你的select为Linux。 没用的。 它不会平衡读/写,select从其中一个磁盘读取数据。 不要这样做。
关于硬件/软件突袭,我的经验是软件(mdadm)RAID在磁盘数量不超过六个的情况下是非常好的。 这有几个原因。
硬件RAID真的取决于你获得的卡,但是当你有很多的硬盘需要使用时,更昂贵的卡会发光,并且会提供良好的监控和警报。 他们还提供热插拔,这可能是非常有用的,但它通常是更昂贵的服务器,只提供这种设施。
你会select什么? Raid1中的2个SAS 15k磁盘,或RAID 10中的4个SATA 7.2k?
IO分析可能是非常难以预测的,尤其是对于虚拟机而言,大部分性能依赖于实际的I / O特性(随机读取/写入或顺序读取/写入)。
就个人而言,我会selectSAS驱动器,他们通常有更快的寻道时间(可能足以弥补其他configuration中有四个磁盘的事实)和更快的顺序读取。 更重要的是,他们通常devise的平均失败时间更长(虽然一如其往往是一场赌博,这是多么的值得回报),但是如果你正在经历一段时间 – SAS硬盘是一个更安全的select。
另一方面,在mdadm上,SATA可能会随机读取I / O,因为mdadmselect一个读取设备的方式(它select从最靠近该扇区的磁盘收集数据块)。 通过加倍磁盘数量,您可能会发现它在seekier系统上performance更好一些。
最典型的工作量将是70%顺序,30%随机。 操作系统通过将写操作重新sorting到最接近可能的扇区(这被称为SATA中的NCQ和SCSI中的TCQ)来积极地避免寻求它的位置,这也试图缓解这个问题。
对于我所说的软件raid -mdadm来说,至less对于两个磁盘来说是令人满意的,而且即将推出的专门的文件系统也有更多的理由select基于软件的方法。
所以总的来说,我会select软件RAID的SAS选项,它通常比较安全,而且对于大多数工作负载来说,即使是SATA硬盘的两倍也不太可能提供更好的性能。
2 x 15k的,每一次,大多数7.2的是不是devise工作一整天。
假设成本不是问题,我会selectLinux的MD软件raid raid10,F2与2个SAS驱动器。 这给你RAID0stream式读取性能和接近RAID0stream式写入性能的东西。 它随着小的随机写入而下降,因为写入的每一个数据段意味着写入每个磁盘的前半部分和后半部分。
像这样工作的任何硬件RAID10解决scheme(英特尔的虚拟RAID称之为matrixRAID)也可能没问题,但我不知道。
如果成本是一个问题,那么使用SATA驱动器加上一些备件可能会更好。 假设你愿意并且能够迅速地取代它们。 我偏爱Linux的md软件RAID,除非由于某种原因不能使用它。