使用Linux softraid,硬盘缓存有多重要?

前端之家收集整理的这篇文章主要介绍了使用Linux softraid,硬盘缓存有多重要?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在更新/扩展我的磁盘集,但不太确定要缓存的磁盘类型.

磁盘缓存量为16/32 / 64MB与1 / 1.5 / 2TB SATA磁盘的容量有什么区别?这些磁盘将用于webapp服务器和媒体工作站,Linux的softraid采用raid-1 / raid-5配置.请注意,由于这两个目的纯粹是为了一个爱好,十几个磁盘的价格是一个大问题.

解决方法

缓存和RAID有一个有趣的关系.

昂贵的RAID控制器具有内置缓存,它们可以关闭驱动器缓存(通常).原因是RAID通常旨在确保您的数据安全,并提高性能.高速缓存以牺牲可靠性为代价来提高性能,因为如果电源耗尽,即使软件认为安全,您的高速缓存也会消失.这会导致真正需要知道磁盘上存在数据的软件中的错误.比如数据库.

如果是控制器,电池可以将数据写入NVRAM,如果是电池供电的阵列,则可以将数据写入物理磁盘.

软件RAID实际上没有这种选择.如果驱动器说“没问题,我们已经获得了数据”,然后电源在数据仍在缓存中时死亡,则存在问题.没有NVRAM可以保存数据,并且由于电池备份(无论如何,磁盘都不会继续旋转.可以使用其他软件来执行此操作).

我将阅读软件RAID HOWTO中“安装注意事项”下的问题9:
http://www.linuxjunkies.org/html/Software-RAID-0.4x-HOWTO.html#s3

这些问题有一些有趣的读物:
SATA Disks that handle write caching properly?
LVM mirroring VS RAID1

无论如何,为了回答你的问题…更多的驱动器缓存为驱动器提供了更多“玩”的空间.换句话说,就时间而言,实际上把东西放在磁盘上是很昂贵的.将内容存储在内存中非常便宜.

性能将取决于您放在磁盘上的负载以及瓶颈所在的位置.每个磁盘的主轴都有一个名为IOPS(每秒I / O操作数 – http://adamstechblog.com/2009/02/10/how-to-calculate-iops-ios-per-second/)的统计数据,用于确定将位置放在旋转盘片上的速度.如果您为硬盘驱动器提供的数据多于放在磁盘上的数据,则它会使用缓存.如果你继续锤击它,它会继续进入缓存.在缓存填满时,计算机会在磁盘上等待清除“脏”数据(需要写入的数据).

因此,对于RAID系统,您有多个正在馈送的磁盘,从而增加了IOPS.添加足够的主轴后,磁盘将停止成为瓶颈,它将成为阵列的传输(您还没有,请不要担心).

从本质上讲,当在磁盘上转储大量数据时,更多缓存会为您提供更多的摆动空间.如果你特别是IO驱动,你会看到一个改进.

另一方面,如果你,你的软件或你的(目前不存在)RAID阵列禁用了驱动器缓存,你就付出了很多钱.

最后,如果您有选择,请获得较低的缓存以支持更高的旋转速率.

猜你在找的Linux相关文章