【翻译自mos文章】使用asm来部署 超大数据库(10TB到PB 范围)--针对oracle 10G
使用asm来部署 超大数据库(10TB到PB 范围)
參考原文:
Deployment of very large databases (10TB to PB range) with Automatic Storage Management (ASM) (Doc ID 368055.1)
范围:
本文适用于在全部平台上的asm配置。包含使用rac 和单实例 环境。
本文适用于超大数据库的创建。而且该数据库会增长到超过10TB级别。
挑战:
asm 元数据存储
解决方式:
au(分配单元) 是asm磁盘组中的主要的分配单位。默认情况下。asm au的大小被设置为1MB
asm data extents 裸设备,该裸设备来存放asm file的内容。
在oracle database 10g里边,每个data extent 是一个单独的au(分配单元)
因为这个extent 和au 的 1对1的映射(map)关系。在一个超大的数据库中。一个asm file extent map 能够增长到GB。在这个情况下。内存使用和打开文件的性能上,效率是及其低下的。
asm 提供了2个隐含參数,这两个參数同意你创建au大小为16MB 和 fine grain striping 大小为1MB(之前为128KB) 的 asm 磁盘组
这降低extent map size 到原来的1/16. au 參数仅仅能用在磁盘组 建立的时候。当一个磁盘组被建立后,你不能改变这个磁盘组的au的大小
为了改变au size(也就是data extent size),你必须reset 以下的asm 隐含參数:从1MB改为16MB,fine grain stripe size 改为1MB
asm实例必须被关闭。_asm_ausize and _asm_stripesize 必须在asm实例的init.ora參数文件里被重置(reset),然后asm实例被重新启动,以继承该參数的新值。
o _asm_ausize=16777216
o _asm_stripesize=1048576
--->注意:以上值的单位为Byte
你必须改动asm file template 。为全部的file types 设置 stripe type 为‘FINE’,以使用1MB的striping。
这必须在asm diskgoup 被创建完之后做。
为了让这两个參数值生效,asm实例必须被重新启动。
当设置了这个两个隐含參数并重新启动了asm 实例之后,不论什么被创建的asm 磁盘组将会使用新的au size 和FINE stripe size
为了在创建asm 磁盘组时。使用正常的1MB au size 和 128K FINE stripe size。这两个隐含參数应该被移除而且asm 须要被重新启动。
样例:
以下的样例建立 了一个au size(即:data extents size ) 为16MB的asm 磁盘组,而且对全部的datafile 来说,FINE striping size 为1MB
1. 关闭 asm 实例
2. 在asm 的init.ora文件里加入例如以下參数:
_asm_ausize=16777216
_asm_stripesize=1048576
3.重新启动asm 实例。
4.建立一个磁盘组:
CREATE DISKGROUP diskgroup_name disk '/devices/diska1','/devices/diska2';
5. 将all asm file 模板 改为 FINE grained:
o ALTER DISKGROUP diskgroup_name ALTER TEMPLATE <tmpl> ATTRIBUTES (FINE);
o Repeat this command for all ASM file types. Attributes types are listed
below:
o CONTROLFILE, DATAFILE, ONLINELOG, ARCHIVELOG, TEMPFILE, BACKUPSET,
PARAMETERFILE, DATAGUARDCONFIG, FLASHBACK, CHANGETRACKING, DUMPSET,
XTRANSPORT, AUTOBACKUP
16MB的 ausize 和 1MB的FINE grain striping 能有效的提供 1MB的 data striping 。同一时候。减少了asm file extent的过载。
这个配置 能在打开 asm file时更快,而且更有效的支持10TB 到PB 范围内的asm database
注意:
Apply the fix for Bug 5100163 in 10.2.0.4
This patch should be applied if you have created ASM Diskgroups with the AU size greater than 1MB and have fewer than 3585 user files.
The following command must be ran on each Diskgroup after applying the patch:
ALTER DISKGROUP <DG_NAME> CHECK ALL REPAIR
- 【翻译自mos文章】使用asm来部署 超大数据库(10TB到PB 范围)--针对oracle 10G
- 【翻译自mos文章】rac数据库中,HC_<SID>.dat文件被其他Oracle_Home下的实例所使用。
- 【翻译自mos文章】 使用asmcmd cp命令 把datafile从文件系统移动(move)到asm磁盘组中--针对11gR2
- 【翻译自mos文章】当NFS server 宕机后,Oracle 数据库 冻结并且alert 文件里没有任何错误
- 【翻译自mos文章】在Oracle GoldenGate中循环使用ggserr.log的方法
- 【翻译自mos文章】怎么找到OGG Director Server使用的数据库和用户名?
- 【翻译自mos文章】设置了RemoveIPC=yes 的RHEL7.2 会crash掉Oracle asm 实例和Oracle database实例
- 【翻译自mos文章】在rac中,使用asmcmd命令从 文件系统 move system datafile 到asm磁盘组的方法
- unix系统下安装64位oracle 10g客户端 以及升级到10.2.0.5(翻译mos文章ID 782923.1)
- 【翻译自mos文章】使用asmcmd命令在本地和远程 asm 实例之间 拷贝asm file的方法
- 【翻译自mos文章】使用asmcmd命令在本地和远程 asm 实例之间 拷贝asm file的方法
- 【翻译自mos文章】将Oracle 12c数据库从标准版convert到企业版
- 【翻译自mos文章】对于oracle 数据库来说,OGG的抽取进程什么时候到database中获取数据?
- 【从翻译mos文章】在OGG (Oracle GoldenGate) 正在使用SCHEMATRANDATA如果,需要额外的db patch
- 【翻译自mos文章】在Oracle 数据库中对SHA-2算法的支持
- 【翻译自mos文章】Oracle Cluster failed to start with ASM instance getting ORA-00443 ---改动/etc/resolv.conf所致
- 【翻译自mos文章】怎么找到OGG Director Server使用的数据库和username?
- 【翻译自mos文章】在Oracle GoldenGate中循环使用ggserr.log的方法
- 【翻译自mos文章】设置了RemoveIPC=yes 的RHEL7.2 会crash掉Oracle asm 实例和Oracle database实例
- 【翻译自mos文章】在Oracle单机数据库中定义database service