RAID 控制器是否同步 HDD 盘片旋转?

Mxx*_*Mxx 25 raid hard-drive hardware-raid

我在市场上寻找新的存储解决方案。在研究各种规格时,我的一位同事说,一些 RAID 控制器可以将 HDD 旋转同步到所有驱动器的扇区/块 0 同时通过读头下方的效果。

我在网上搜索过,但没有找到证明/反驳这一说法的信息。

vor*_*aq7 28

通常我很确定答案是否定的(事实上我知道没有控制器可以做到这一点)。

进行这样的同步将非常困难——振动、温度、自然电源波动等都对盘片旋转速度的影响很小(如果你真的很挑剔,扇区的大小)。您需要不断地以极小的量改变磁盘主轴电机的速度以保持同步,这将需要非常精确(非常昂贵)的电机控制,以及大量磁盘控制器开销来确定每个驱动器的当前盘片位置。由于这样做几乎没有实际好处,因此不值得花费硅片和时间。

(如果您在旋转锈蚀介质的盒子之外思考,这个想法也会完全瓦解——固态磁盘没有寻道时间或主轴速度:读取对于任何扇区来说都是有效的恒定时间,并且没有什么可以“同步”的。)

  • 正确,这曾经在 10-15 年前通过特定的并行 SCSI 同步命令发生,但现在几乎不可能通过更快的旋转速度和软扇区来维持。 (7认同)
  • @Chopper3 天哪 - 我忘记了 [SCSI 主轴同步](http://www.datapro.net/techinfo/scsi_faq.html#_Hlk410548006)! (6认同)
  • 我拥有一个希捷 ST410800n SCSI 驱动器(9GB,5.25 英寸全高),这个驱动器有一个特殊的连接器,可以在不同的 ST410800n 驱动器之间实现主轴同步。 (2认同)

Ben*_*son 24

RAID 控制器没有(也不能)同步磁盘轴,但它是某些驱动器的一个选项。给定一组带有主轴同步连接器的相同驱动器,您可以确保一组磁盘全部同步。我碰巧拥有一些 Seagate Elite 3(古老的、过时的 SCSI-2 驱动器),我记得有这样一个连接器,所以我找到了Seagate ST43400N/ND Elite 3 用户指南,它在图 1 中有这个方便的插图(注意连接器从剩下):

希捷 ST43400 图

图 14(此处未显示)说明了如何将驱动器连接在一起:

同步主轴

主轴同步功能可以同步一组磁盘驱动器的主轴旋转。这减少了启动器在多个磁盘驱动器之间切换时通常遇到的延迟。图 14 显示了两种系统配置。在一种类型的系统中,系统中的磁盘驱动器之一提供参考时钟。在另一种类型中,外部信号源提供参考时钟。


Pos*_*iet 11

由于以下几个原因,同步驱动器不再有意义:

  • 磁盘有坏扇区在生产中重新定位。磁盘体积巨大,生产后有很多缺陷,需要重新定位。因此,同一生产运行的两个磁盘无论如何都不会 100% 同步。
  • 磁盘在使用过程中会在内部重新定位坏扇区。这些扇区被移动到磁盘上的保留空间,使其更加不同步。
  • 缓存、TCQ/NCQ 和重新定位的扇区使磁盘访问顺序在物理级别上具有不确定性。如果负载很高,如果一个磁盘出现故障,可能需要很长时间才能恢复正常。
  • 多条带访问可以跨越扇区(甚至盘片)边界,无论如何都会使读取不对齐。如果您在 Raid 6 上访问 4x 条带大小,则某些条带可能位于不同磁盘的不同区域中。
  • Raid 中的读取访问通常不会针对所有磁盘,只要磁盘不抱怨它们的块校验和。这会使磁盘与缓存同步,从而导致物理同步。(除非您还关闭读取缓存)
  • RAID 控制器上的读取缓存,操作系统中的读写缓存进一步使问题复杂化。我希望raid上没有交换空间,这可能会导致任何性能问题。

在早期,磁盘同步是为了使访问具有确定性,这在用于存储结果的内存稀缺时,或者当突袭的实施需要它时(突袭 2、突袭 3)非常重要。

很难量化同步驱动器的优势。我想如果要获得实质性的性能优势,同步将在某种程度上成为可能。

将来,对于 SSD,事情是相似的,但出于不同的原因,例如块重定位、磨损均衡、修剪等。

现代驱动器有自己的操作系统,并在内部花时间解决许多问题,无论是 HD 还是 SSD。即使您使它们在物理上同步,从逻辑上讲,它们无论如何也不会同步。


Rex*_*Rex 7

如果您曾经使用从未使用过的 RAID-2,其中数据在位级别进行条带化,则需要同步磁盘。我认识的人都没有使用过它,但是,从技术上讲,如果 RAID 控制器支持 RAID2,则它需要能够同步盘片旋转。这将是现在唯一需要拥有它的日子。