对于SSD的RAID 0设置是不是要和普通硬盘一样?毕竟2者原理不同,差别也不少。很多人说条带和簇设置越小,测试分越高?果真如此吗?
RAID 0条带,先从控制器说起吧,控制器先分主板集成和外置控制器卡。
使用主板集成控制器一般给你4KB, 16KB, 32KB, 64KB, 128KB选择.主板厂预设的默认优化一般是64K.
一般如果你的要求是数据库,服务器(Oracle, SAp, SQL)选择小的条带。选择16 ,32 KB。
如果你是视频编辑,大文件,选择大的条带吧。
测试软件:Atto, HTunePRO, CristalDiskMark, Iometer, HDTach, PCMark05里,设置32K和64K是所有设置里成绩最好的2个点。
外置控制卡一般有更多选择,比如adaptec 5805 有 16KB, 32KB, 64KB, 128KB, 256KB (预设), 512KB, 1024 KB。
同样的硬盘在这张卡上跑以上的测试软件最好成绩反到是256K了。
所以我们要说,条带的大小设置要注意3点。
1) 你的需求(平时应用的文件主要大小)
2) 控制器(外置或者集成)
3) 有多少盘需要组RAID 0(2个或者更多)
好了,下面来解说下条带:
比如你写个1024K文件,然后你是2盘RAID 0条带设置512K大小,这样你的阵列只要1次请求就能完成任务(双盘每盘512)。如果条带是4K,需要128个请求,这样会占用更多CPU资源。(这也是为啥外置控制卡上带CPU的道理),所以你存放大文件,请用大条带。
条带同时也是阵列上的最小单位,比如说你需要写入个8K的文件,你的条带为512K(双盘),那么你肯定只需要1次请求就完成任务,但同时这一次请求里,(8K的数据和1016K的空白),这是不合理的。
如果你条带为4K(双盘),这样8K的文件也是1次请求完成,但是你肯定会比前面那样快。
关于簇:
大的簇对提高性能有益(比如64K),是因为:
1.让盘更能保持持续写入。
假设:写入个名字为xyz的39K文件,如果簇为64K,写入后我们浪费了29K的空间。读取的时候一次读取。
如果簇为4K的话,写入到10个簇后,我们只浪费1K的空间,但是读取的时候要读取10个簇,更可怕的是万一这10个簇分别在硬盘的不同地方,这样寻找起来的速度。。。(碎片多的话就这样)。容量和效能自己衡量吧。
2.文件分配表。(告诉盘去那个地址找数据)
簇为64K的时候,写入39K的文件,文件分配表增加1个地址,但是为4K簇的话,需要10个地址来表示这个39K文件。表当然是越小越快了。
对于主板集成控制器,我建议64K簇加64K条带。对于外置控制卡,建议如果没有必要用官方默认推荐值。
还有关于碎片整理,哪里文章都写了SSD的寻道时间低,一般是0.1ms到0.4ms左右,所以找哪里都是0.1ms和0.4ms,不需要整理,其实不然,SSD每个区域找数据的速度还是不一样的。
所以需要必要的整理,但是整理碎片会伤害SSD寿命,可以尝试下DISKKEEPER 2009里带的专为SSD优化的整理程序hyperfast。(家用版不包括)广告做的很凶,其实真的那样吗?