ASM 11R2基本知识点有哪些

网友投稿 355 2023-12-18

ASM 11R2基本知识点有哪些

ASM 11R2基本知识点有哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

ASM 11R2基本知识点有哪些

1 基本概念

ASM实例一直处于started或mounted状态,11R2其在-中注册状态为ready,即支持远程访问;

启动时将连接字符串注册到CSS,数据库实例启动时由ASMB读取以此建立同ASM的联系,ASM使用前台进程UFG同数据库实例联系;

磁盘以AU为分配单位,在创建磁盘组时指定,范围为1-64M;

ASM文件以extent为单位,一个extent可对应若干AU,为避免管理大文件占用过量SGA,oracle采用可变大小的Extent

0-20000区间, extent = AU

20000-40000区间,extent = 4* AU

>40000,extent=16* AU

通常建议ASM extent 等于或是 DB extent的整数倍;

同一磁盘在不同RAC节点的路径可以不一致,依靠其磁盘头判断是否同一磁盘;

2 镜像与条带

镜像

ASM采用extent镜像而非磁盘镜像,若某个磁盘失败,则区间指针可借助磁盘伙伴被重定向到区间镜像;

在normal和high冗余策略下,ASM将主区间和区间镜像保存于不同的故障组;

ASM的磁盘伙伴维护extent镜像拷贝,其存于PST伙伴状态表中;ASM基于故障组定义自动选择磁盘伙伴,而故障组在创建磁盘组时指定;

磁盘最多可有10个active伙伴关系,drop disk会引发重置形成新的伙伴关系,PST跟踪此操作直至rebalance完成;

过多的磁盘组嵌套可能会耗尽空间,引发ORA-15074 diskgroup requires rebalance completion;

在normal和high磁盘组中,可以为文件单独指定冗余级别;

条带化

将AU存于同一故障组的不同磁盘上,分为粗粒度和细粒度;

粗粒度:条带=AU,当区间>20000时,一个extent的AU可位于不同磁盘上,提高IO吞吐量;

细粒度:条带=128K,减少IO延迟,适用于online logfile(可单独建立细粒度磁盘组);

文件模板决定了条带化类型,如果创建文件时不显示指定则选择默认模板;

3 数据结构

分为物理元数据和虚拟元数据,

3.1 物理元数据

存于磁盘前2个AU,用于必要的ASM引导;

3.1.1 磁盘头第1个AU的首块,大小为4K;

磁盘名/磁盘号

磁盘组/故障组名

磁盘/AU大小

创建/加载时间

ASM/DBMS兼容性

文件目录指针

3.1.2  AT分配表

记录磁盘的AU使用情况,每个AU对应一个分配条目ATE(entry),多个ATE组成一个ATB(block);

当AU被某文件使用时,其ATE记录下file no + extent no;

为分配的AU标示为free,而free extent保存于1个链表中以便分配,

其与虚拟元数据file directory互补,可通过alter diskgroup … check验证其一致性;

3.1.3 FST 空闲空间表

每个ATB包含一个FST条目,描述其下free extent;

请求空间分配时,ASM通过FST跳过full ATB;

3.1.4 PST伙伴关系表

占用第2个AU,跟踪磁盘组成员和磁盘伙伴,ASM通过其判断磁盘组是否有足够磁盘在线;

针对每个磁盘,PST记录 磁盘状态 + 伙伴个数 + 伙伴列表;

任意时间一个磁盘组只能有一个active PST,默认一个故障组包含1个PST;

PST副本: PST shadow为active  PST的副本(两者位于不同磁盘),其副本随着active PST更新,完毕后两者角色互换;

PST最后1个块用于磁盘心跳,1避免磁盘组在不同集群中同时加载,类似控制文件 

3.2 虚拟元数据

位于ASM文件中,分为directories和registers,前者为ASM独立访问的元数据文件,文件号从1开始;后者文件号从255倒计数,为保留的ASM文件;

3.2.1 File directory

包含所有ASM文件的metadata,与物理元数据的AT对应;文件号为1 ;

Incarnation number + file size + file type + redundancy level + strip level + created/modified time + file layout

ASM文件被删除后文件号可重用,incarnation number却不可能相同,由此保证文件的唯一性;

File layout:由区间指针组成,包括区间对应的磁盘号和 AU号,1个file directory包含60个直接区间指针 和最多300个间接区间

3.2.2 Disk directory

包含磁盘组所有信息,与PST对应但比之更详尽,文件号为2;

3.2.3 ACD

类似redo日志,文件号3;

每个ASM实例拥有1个42M的ACD chunk,第一个块包含打开/关闭状态和检查点(3秒更新1次),其余循环利用;

3.2.4 COD

类似undo,跟踪耗时较长操作如rebalance/文件创建,文件号4;

若当前实例执行rebalance失败,集群其他节点可重启该操作;

其余还有template directory, alias directory以及attribute directory;

3.2.5 Staleness registry

当compatible.rdbms>=11.1且冗余类似为normal或high时才可用,文件号254;

当磁盘offline时在SR中获取1个slot,为该磁盘每个AU分配1个bit,若offline期间发生写操作则设置AU的bit位;

当磁盘再次online时,ASM根据slot中被更新的bit位从镜像区间同步数据,以此完成11R2的fast mirror resync;

4 与数据库交互

创建文件

RDBMS向ASM发送创建文件请求,ASM分配空间并将extent map返回给RDBMS,文件名格式为+<磁盘组>/<数据库名>/<文件类型>/;

RDBMS初始化文件,由COD跟踪尚未完成的文件创建;

RDBMS提交完成请求,则ASM的LGWR清除ACD,DBWR更新AT以及file directory和alias directory;若RDBMS撤销创建请求,则ASM使用COD回滚;

删除文件也由COD全程跟踪并在失败时回滚;

打开文件

RDBMS发送请求给ASM,后者将文件的extent map返回给RDBMS;11G会先发送60个直接区间,根据RDBMS请求再传送间接区间;

读错误

读主区间遭遇错误时自动选择镜像区间,11g还可自动对主区间的坏块进行修复;

若ASM实例不能读取虚拟元数据则强制卸载磁盘组,若不能读取磁盘的物理元数据则将其offline;

写错误

若ASM实例收到写错误则尝试该磁盘offline,并通过PST查看伙伴磁盘状态,若很多伙伴磁盘也offline则强制卸载磁盘组;

将消息传给其他ASM实例,由其更新RDBMS实例;

Compatible.rdbms >=11.1时disk_repair_time指定磁盘可offline最长时间;

关于ASM 11R2基本知识点有哪些问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:AS400处理数据高效率的几个原因分别是什么
下一篇:sga中library cache的内部原理是什么
相关文章

 发表评论

暂时没有评论,来抢沙发吧~