文档介绍:AIX -磁盘的I/O性能评估
磁盘的I/O性能评估
对磁盘IO的性能考虑:
1)       将频繁访问的文件系统和裸设备应尽可能放置在不同的磁盘上。
2)       在建立逻辑卷时尽可能使用mklv的命令开关给不同的文件系统和裸设备赋予不同的内策略。
3)       使用磁盘设备驱动适配器的功能属性构建合适的RAID方式,以获得更高的数据安全性和存取性能。一般考虑采用RAID5或者RAID10方式,对于写要求比较高的系统,一般建议采用RAID10方式;关于RAID10 与RAID 5的比较,可以见piner的文章,作为补充我会在后面贴出。
4)        尽可能利用内存读写带宽远比直接磁盘I/O操作性能优越的特点,使频繁访问的文件或数据置于内存中进行操作处理;
社区论坛
 
在这里,顺带提一下裸设备以及文件系统的对比。
裸设备的优点:
1)        由于旁路了文件系统缓冲器而进行直接读写,从而具有更好的性能。对硬盘的直接读写就意味着取消了硬盘与文件系统的同步需求。这一点对于纯OLTP系统非常有用,因为在这种系统中,读写的随机性非常大以至于一旦数据被读写之后,它们在今后较长的一段时间内不会得到再次使用。除了OLTP,raw设备还能够从以下几个方面改善DSS应用程序的性能:
排序:对于DSS环境中大量存在的排序需求,raw设备所提供的直接写功能也非常有用,因为对临时表空间的写动作速度更快。
序列化访问:raw设备非常适合于序列化I/O动作。同样地,DSS中常见的序列化I/O(表/索引的完全扫描)使得raw设备更加适用于这种应用程序。
2)        直接读写,不需要经过OS级的缓存。节约了内存资源,在一定程度上避免了内存的争用。
3)        避免了操作系统的cache预读功能,减少了I/O。
4)        采用裸设备避免了文件系统的开销。比如维护I-node,空闲块等。
 
 
裸设备的缺点:
1、裸设备的空间大小管理不灵活。在放置裸设备的时候,需要预先规划好裸设备上的空间使用。还应当保留一部分裸设备以应付突发情况。这也是对空间的浪费。
2、很多备份工具软件对裸设备的支持不足,导致备份等的操作和方法比较原始、麻烦。
 
 
接下来,对于磁盘I/O的性能性能评估的方法。
1、iostat查看
#iostat 1 3
 
System configuration: lcpu=16 drives=11 paths=4 vdisks=0
 
tty: tin tout avg-cpu: % user % sys % idle % iowait
 
Disks: % tm_act Kbps tps Kb_read Kb_wrtn
hdisk1 0 4
hdisk0
0 4
hdisk2 0 0
hdisk3 0 0
dac0 3072 11469
dac0-utm 0 0
dac1 0 0
dac1-utm 0 0
技术社区
hdisk4 1728 3262
hdisk5 1344 8206
cd0 0 0
 
tty: tin tout avg-cpu: % user % sys % idle % iowait
 
Disks: % tm_act Kbps tps Kb_read Kb_wrtn
hdisk1
0 0
hdisk0 0 0
hdisk2 0 0
hdisk3 0 0
dac0 1832 4124
dac0-utm 0 0
dac1 0 0
dac1-utm 0
hdisk4 512 2328
hdisk5 1320 1796
cd0 0 0
 
tty: tin tout avg-cpu: % user % sys %