我正处于更新/扩展磁盘集的过程中,但不太确定要获得什么样的磁盘,从缓存的角度来看。
16/32/64 2TB的磁盘缓存量对于1/1.5/2TB SATA磁盘的容量有什么不同?这些磁盘将在webapp服务器和媒体工作站中使用,Linux的软in在raid-1/raid-5配置中使用。请注意,由于这两种用途都纯粹是为了一种爱好,所以一打磁盘的价格是一个大问题。
发布于 2010-04-20 16:51:53
缓存和RAID之间有一种有趣的关系。
昂贵的RAID控制器有内置的缓存,并关闭驱动器缓存(通常)。原因是RAID通常是为了确保数据安全和提高性能而设计的。缓存以牺牲可靠性为代价来提高性能,因为如果电源失效,缓存就会消失,尽管软件认为它是安全的。这会导致软件中存在一些真正需要知道磁盘上存在数据的坏东西。数据库之类的东西。
电池存在的目的是在控制器出现时将数据写入NVRAM,或者在出现电池支持的阵列时将数据写入物理磁盘。
软件RAID实际上没有这样的选择。如果驱动器说“好吧,我们有数据了”,那么当数据还在缓存中时,电源就会死掉,就会有一个问题。这里没有保存数据的NVRAM,而且磁盘不会因为电池备份而不断旋转(至少它们自己也是这样)。可能有其他软件可供使用)。
我会在“软件RAID操作:http://www.linuxjunkies.org/html/Software-RAID-0.4x-HOWTO.html#s3”中的“安装注意事项”下阅读问题9。
这些问题有一些有趣的读物:
无论如何,响应您的question...more驱动器缓存给驱动器更多的空间来“玩”。换句话说,就时间而言,实际上把东西放到磁盘上是很昂贵的。把东西存储在内存里真的很便宜。
性能将真正取决于您要在磁盘上加载的负载以及瓶颈所在。每个磁盘的纺锤体都有一个名为IOPS (每秒I/O操作- http://adamstechblog.com/2009/02/10/how-to-calculate-iops-ios-per-second/)的统计信息,它决定了它在旋转盘上放置比特的速度。如果硬盘驱动器输入的数据比磁盘上的数据多,那么它就会使用缓存。如果你继续敲击它,它就会继续输入高速缓存。在缓存填满时,您的计算机在磁盘上等待清除“脏”数据(需要写入的数据)。
因此,对于RAID系统,您有几个磁盘正在被馈送,从而增加了IOPS。在添加足够多的纺锤体后,磁盘不再是瓶颈,它将成为传输到数组的通道(您还没有,请不要担心)。
本质上,更多的缓存为您提供了更大的回旋余地,当涉及到在磁盘上丢弃大量数据时(S)。如果您特别关注IO驱动,您将看到一个改进。
另一方面,如果您、您的软件或您的RAID阵列(目前还不存在)禁用了驱动器缓存,那么您将付出大量的金钱。
最后,如果您有选择,得到一个更低的缓存有利于更高的自旋率。
https://serverfault.com/questions/134136
复制相似问题