Chinaunix首页 | 论坛 | 博客

qsh

  • 博客访问: 4034700
  • 博文数量: 1015
  • 博客积分: 15904
  • 博客等级: 上将
  • 技术积分: 8572
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-04 19:16
文章分类

全部博文(1015)

文章存档

2019年(1)

2017年(1)

2016年(19)

2015年(27)

2014年(30)

2013年(95)

2012年(199)

2011年(72)

2010年(109)

2009年(166)

2008年(296)

分类: Oracle

2012-06-05 22:59:09

PP Striping、LV Striping和Oracle存储规划


PP Striping、LV Striping和Oracle存储规划

GOTOTOP # GZ # 2006-9-19

这段时间项目组一直在折腾这个事情,顺便清洗一下自己思路。

1、基本概念

只是列一下和下文有关的,详细概念参见存储和LVM相关文档。

存储的M个硬盘PDISK一组,RAID以后成为一个LUN,每个LUN我们可以认为是一个大的HDISK。

由N个LUN组成一个VG,每个LUN上的物理空间以PP(Physical Partition)为单位进行分配。

一个VG上面可以划分多个LV供OS或DB使用,每个LV以LP(Logical Partition)进行空间分配。

2、LVM Striping

在LVM层面上提供了两种Striping方式:PP Striping和LV Striping。

PP Striping

PP Striping的本质是LP和PP采用一对一轮循分配,可以简单地理解为,LP按顺序在同一个VG的N个LUN上面进行PP轮流分配,从而实现打散的目的。

以PP SIZE决定打散程度。

LV Striping

英文的含义为Striping within a Physical Partition,即同一个LP按Striping Size大小分散到多个PP上面。

如果PP Size大小为64M,Striping Size为1M,则每个PP上面可以放64个Stripes,即以Striping Size决定打散程度。

3、Oracle SAME原则

SAME,Stripe And Mirror Everything,这个原则很多人可能都有误解。

8个硬盘使用RAID10组成一个LUN,这是SAME;再在一个VG里面的多个LUN之间进行STRIPING,这也是SAME。差别在于Striping的程度不同。

4、Oracle Database存储划分

在遵循SAME原则的基础上,GOTOTOP建议:

1、手工打散Redologs、Archivelogs、Undo、Temp到所有LUN上面,而不是按照传统的Oracle做法放在独立的LUN上面(已经是SAME了);

2、能够明确数据和I/O分布的大表建议手工打散到不同的LUN上;

3、对其他无法准确估计I/O分布和压力的Data、Index文件实行更大程度的Striping。

5、Oracle使用Striping的建议

能使用PP Striping尽量使用,这个技术上更加成熟,对于随机I/O的性能也会更好。

如果使用LV Striping,建议Striping Size为Db_block_size * db_file_multiblock_read_count,通常会为简单起见直接采用1M大小。

阅读(1032) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~