RAID
常见的
LEVEL
有
0
,
1
,
3
,
5
,组合方式常有
0+1
,
1+0
,各自的特点描述如下:
RAID0: 将多个物理盘组成一个大的逻辑盘,容量为各盘之和, RW 性能最好,但问题是如果一个盘如现损失,整个 RAID 的数据都将丢失。
RAID1 :即镜像,组成 RAID1 的多个盘中的数据都是同样的,这样多个盘的容量为一个盘,实现了数据保护功能,且读写性能都不错,在一些情况下,读性能比单个物理硬盘读高出 15-20% 左右。
RAID3 :组成 RAID 的多个磁盘中有一个盘用来存储校验数据,当有一个非校验盘损坏时,数据能自动恢复到新盘。但当校验盘出现损毁时,整个 RAID 都失效了,即存在单点故障。写性能较差,但读性能不错,因为读数据时,为一个 IO 请求服务时,所有的磁盘磁头都位于同一位置(同一柱面,同一扇区)
RAID5 :与 RAID3 类似,不过校验数据是分布在整个 RAID 上的所有硬盘上的。所有无论丢失哪个盘,都不会整个毁坏 RAID 上的数据。这种方式写性能较差,读性能不错。并适用于随机读写频繁的情况,即多个硬盘磁头可各自服务于不同的 IO 请求,提高了读写性能。
1+0 的情况好于 0+1 ,其原因是 0+1 时,如果 0 中一块盘损坏时,这一半逻辑盘都失效了,读性能理论上丢失了 50% (请参考 RAID1 的描述);而 1+0 时,如果 0 中丢了一块盘,它的镜像还存在,能正常工作,整个 0 还是存在的,对性能影响不大。
在 ORACLE 使用 RAID 时,可作这样的考虑:
两个盘作 RAID1, 用来存放在线日志,最好是开成三个卷,存三组,每组两个成员。
两个盘作 RAID1, 用来存归档日志。
如果不能为归档做专门的 RAID1 ,要将其放在和在线日志同样的 RAID1 上,也应该为其单独开一个卷组
其余盘做 RAID3 ,或 RAID5 ,具体用哪种要看应用的目的,即参考:如果 DB 应用为 DATA MART/DATA WH , 则用 RAID3 较好;如果为一般的 OLTP 应用,则用 RAID5 较好。这一原则可参看 RAID3 与 RAID5 的特点描述。
另外,表空间的划分上, TEMP,RBS,SYSTEM 表空间最好分布在同一卷组上,它们形成的竞争最少,另外数据表空间和索引表空间要分在不同的卷存放,通常它们都是形成竞争的主要原因。
RAID0: 将多个物理盘组成一个大的逻辑盘,容量为各盘之和, RW 性能最好,但问题是如果一个盘如现损失,整个 RAID 的数据都将丢失。
RAID1 :即镜像,组成 RAID1 的多个盘中的数据都是同样的,这样多个盘的容量为一个盘,实现了数据保护功能,且读写性能都不错,在一些情况下,读性能比单个物理硬盘读高出 15-20% 左右。
RAID3 :组成 RAID 的多个磁盘中有一个盘用来存储校验数据,当有一个非校验盘损坏时,数据能自动恢复到新盘。但当校验盘出现损毁时,整个 RAID 都失效了,即存在单点故障。写性能较差,但读性能不错,因为读数据时,为一个 IO 请求服务时,所有的磁盘磁头都位于同一位置(同一柱面,同一扇区)
RAID5 :与 RAID3 类似,不过校验数据是分布在整个 RAID 上的所有硬盘上的。所有无论丢失哪个盘,都不会整个毁坏 RAID 上的数据。这种方式写性能较差,读性能不错。并适用于随机读写频繁的情况,即多个硬盘磁头可各自服务于不同的 IO 请求,提高了读写性能。
1+0 的情况好于 0+1 ,其原因是 0+1 时,如果 0 中一块盘损坏时,这一半逻辑盘都失效了,读性能理论上丢失了 50% (请参考 RAID1 的描述);而 1+0 时,如果 0 中丢了一块盘,它的镜像还存在,能正常工作,整个 0 还是存在的,对性能影响不大。
在 ORACLE 使用 RAID 时,可作这样的考虑:
两个盘作 RAID1, 用来存放在线日志,最好是开成三个卷,存三组,每组两个成员。
两个盘作 RAID1, 用来存归档日志。
如果不能为归档做专门的 RAID1 ,要将其放在和在线日志同样的 RAID1 上,也应该为其单独开一个卷组
其余盘做 RAID3 ,或 RAID5 ,具体用哪种要看应用的目的,即参考:如果 DB 应用为 DATA MART/DATA WH , 则用 RAID3 较好;如果为一般的 OLTP 应用,则用 RAID5 较好。这一原则可参看 RAID3 与 RAID5 的特点描述。
另外,表空间的划分上, TEMP,RBS,SYSTEM 表空间最好分布在同一卷组上,它们形成的竞争最少,另外数据表空间和索引表空间要分在不同的卷存放,通常它们都是形成竞争的主要原因。