学习ASM技术--条带化原理和rebalance
来源:互联网 发布:159魔天宫输出数据 编辑:程序博客网 时间:2024/06/06 12:27
一、条带化:
ASM的条带化有两种:coarse和fine-gained。AU是最小分配单元,缺省是1M,每个AU缺省由8个128K条带空间组成。
coarse条带化中一个extent映射为一个AU,缺省是1M大小,比如4个磁盘
#0~#3,分配extent时候,第一个AU分配给disk0,第二个AU给disk1,依此顺推。所以该条带化适合连续的I/O读写,比如全表扫描表。
Fined-gained条带化,一个AU中的8个128K条带空间,平均打散在磁盘上,也就是说,4个磁盘,1个AU是平均分布在4个磁盘,每个磁盘2个128K。适合于对数据读写延迟比较敏感的文件。如redo日志,控制文件,spfile等。
10g版本AU和条带设置参数:_asm_ausize和_asm_stripesize,11g版本数据库在创建diskgroup时候,可以设置attribute 'au_size' = '16M'。
二、Rebalance
从diskgroup中添加或删除disk时候,将触发RBAL进程创建rebalance计划,并计算执行Rebalance所需要时间和工作要求,然后发消息给ASM Reblance (ARBx)进程处理该请求。ARBx进程的数量由参数ASM_POWER_LIMIT决定。COD (Continuting Operation Directory)用于记录rebalances情况。如果rebalance失败,在重启instance时候,将从COD读取记录,重新启动rebalance。ARBx进程对每个extents进行locked, relocated和unlocked操作,执行过程中可以参考v$asm_operation视图。
ASM_POWER_LIMIT范围是0~11,0:表示不进行rebalance,值越大, rebalance速度越快。
在进行rebalance时候要注意以下几点:
1、每个disk的大小必须是相同,如果存在一个小盘,因为rebalance将对每个盘的分配相同比例的空间,可能造成rebalance时候空间不足。
2、rebalance仅仅在diskgroup发生改变时候才进行的,并不是定时执行
3、如果磁盘大小一样,仍然没有进行rebalance,需要查看asm_power_limit
4、如果rebalance执行过程中,server宕机,重启后会自动进行rebalance
5、影响rebalance速度因素有很多,最重要是I/O子系统
6、如果执行过程中,空闲空间不足,造成rebalance失败,将出现ORA-15041错误,需要再添加disk,。
7、如果需要频繁添加disk,每一次都可能造成数据的频繁移动,为提高效率,最好批量添加。
从老的磁盘阵列切换和迁移disk到新的磁盘阵列命令如下:
SQL> alter diskgroup add disk '/dev/xxx/xxx'
drop disk [disk_name] rebalance power 8;
ASM的条带化有两种:coarse和fine-gained。AU是最小分配单元,缺省是1M,每个AU缺省由8个128K条带空间组成。
coarse条带化中一个extent映射为一个AU,缺省是1M大小,比如4个磁盘
#0~#3,分配extent时候,第一个AU分配给disk0,第二个AU给disk1,依此顺推。所以该条带化适合连续的I/O读写,比如全表扫描表。
Fined-gained条带化,一个AU中的8个128K条带空间,平均打散在磁盘上,也就是说,4个磁盘,1个AU是平均分布在4个磁盘,每个磁盘2个128K。适合于对数据读写延迟比较敏感的文件。如redo日志,控制文件,spfile等。
10g版本AU和条带设置参数:_asm_ausize和_asm_stripesize,11g版本数据库在创建diskgroup时候,可以设置attribute 'au_size' = '16M'。
二、Rebalance
从diskgroup中添加或删除disk时候,将触发RBAL进程创建rebalance计划,并计算执行Rebalance所需要时间和工作要求,然后发消息给ASM Reblance (ARBx)进程处理该请求。ARBx进程的数量由参数ASM_POWER_LIMIT决定。COD (Continuting Operation Directory)用于记录rebalances情况。如果rebalance失败,在重启instance时候,将从COD读取记录,重新启动rebalance。ARBx进程对每个extents进行locked, relocated和unlocked操作,执行过程中可以参考v$asm_operation视图。
ASM_POWER_LIMIT范围是0~11,0:表示不进行rebalance,值越大, rebalance速度越快。
在进行rebalance时候要注意以下几点:
1、每个disk的大小必须是相同,如果存在一个小盘,因为rebalance将对每个盘的分配相同比例的空间,可能造成rebalance时候空间不足。
2、rebalance仅仅在diskgroup发生改变时候才进行的,并不是定时执行
3、如果磁盘大小一样,仍然没有进行rebalance,需要查看asm_power_limit
4、如果rebalance执行过程中,server宕机,重启后会自动进行rebalance
5、影响rebalance速度因素有很多,最重要是I/O子系统
6、如果执行过程中,空闲空间不足,造成rebalance失败,将出现ORA-15041错误,需要再添加disk,。
7、如果需要频繁添加disk,每一次都可能造成数据的频繁移动,为提高效率,最好批量添加。
从老的磁盘阵列切换和迁移disk到新的磁盘阵列命令如下:
SQL> alter diskgroup add disk '/dev/xxx/xxx'
drop disk [disk_name] rebalance power 8;
0 0
- 学习ASM技术--条带化原理和rebalance
- 理解ASM(四)条带化原理和rebalance
- 理解ASM(四)条带化原理和rebalance(ASM发挥条带化作用的前提是主机里有多块磁盘)
- asm rebalance 原理
- Oracle ASM - 条带化
- Oracle ASM条带化
- 2015.1.6oracle asm 条带化
- ORACLE 二次条带化【ASM、RAID说明】
- ASM概述、组件、优点、条带化
- ASM Fast Rebalance
- asm创建删除磁盘,磁盘组和rebalance操作
- 条带化
- asm技术学习
- oracle rebalance asm磁盘组命令
- All about ASM Fast Rebalance [ID 445037.1]
- Rebalance Disk Group + ASM Disk Discovery
- HPUX striping 条带化
- 条带化(Striping)
- C语言中字符串的相关处理
- HDU 1285
- JSR 303 - Bean Validation 介绍及最佳实践
- SocketServer 服务器
- python的datetime模块功能详解
- 学习ASM技术--条带化原理和rebalance
- CUDA编程指南阅读笔记(六)
- Lua table转C++数组
- 添加xib的view
- hdu 2509 Be the Winner
- Binder机制1---Binder原理介绍
- hdoj 1249 三角形
- 《Effective C++》阅读笔记三:聊聊#define与const,enum和inline
- notepad++ 快捷键大全、notepad常用快捷键