硬盘速度:RPM与caching

当试图select一个SATA磁性硬盘驱动器(不是SSD)来实现随机和线性访问的高性能时,这应该是主要因素?

例如:具有16MBcaching的10k RPM驱动器的性能要优于具有32MBcaching的7200RPM驱动器

简短的答案是肯定的。 您的总硬盘延迟是[查找延迟] + [旋转延迟]。

10K RPM驱动器由于其更快的旋转而具有更小的旋转延迟,并且还能够更快地从驱动器读取数据。 更高的caching将做的是写入。 caching与caching类似。 当它从磁盘读取数据时,它会将最近访问过的数据和数据存储在附近,以便快速访问。 这被称为时空局部性。 如果您的访问模式使您读取相同的文件或数据存储在彼此附近,则较高的caching将非常有用。

维基百科在磁盘caching上有一个体面的页面。

这是一个非常难以回答的问题,并会受到诸如NCQ,命令队列支持等其他因素的影响。

我认为一个经验法则是,对于大量的小访问,随机I / O,转每分钟。 对于线性访问去caching。

取决于caching命中的可能性。 如果你的磁盘上只有less量(8/16 / 32MB)的数据,你总是读取和写入,那么你将得到非常高的caching命中率,所以caching越大越好。 当然,你的操作系统可能能够caching更多,并使用更快的内存。 如果高速caching命中的可能性很低,即您的数据集比磁盘高速caching大很多倍,那么根据数据集的大小,我会尽可能降低随机查找时间。

无论哪种方式,如果你需要270GB或更less,或者希捷Barracuda 7200.11,如果你需要更多的话,只需要获得镜像对的Velociraptors。 我们可以整天围着它跳舞,但是这些会把你排除在外:)

最终取决于你使用的数据。 例如,caching提高了一次又一次访问的内容的性能,例如像Web服务器上的文件一样。 它还可以提高写入性能,因为数据只需写入caching,当磁盘可用(或caching已满)时,caching将被caching到磁盘。 更高的RPM提高了“随机”访问(例如,查找时间),这是数据库所需要的。

我会更高的RPM,所有的东西都是平等的。

不要忘记面密度也是性能的一个因素。 在其他条件相同的情况下,随着驱动器盘片面密度的增加,您将实现更快的数据传输速率。 旋转速度主要与访问时间有关,但一旦数据定位,面密度就成为读取数据的吞吐量的一个因素。

所以,容量也是很大的。 大容量驱动器往往是单盘面密度较高的驱动器。

这取决于您的数据以及如何使用它。 如果您的数据不经常被重复使用,我认为您的快速旋转会更好,因为caching只有在获得点击时才会有帮助。 如果你的数据变化很大,那么caching不会给你带来太大的帮助。

我不知道高速caching大小被logging为对性能有任何显着的影响,并且当您比较几十兆的驱动器caching到演出或更多的caching的操作系统,很容易明白为什么。

正如其他答案所说,旋转速度有很大的影响。

我想说,这主要取决于你想用你的硬盘。 如果你使用它作为引导,那么去caching! 如果你使用它来存储,去RPM! 如果你处在中间,那会更复杂,更有感觉。 但是我认为人们应该问自己的主要问题是:你会不会开机? 如果是,那么你的问题是回答^^