查看原文
其他

ASM 翻译系列第二弹:ASM 12C 版本新特性

2016-06-13 邱大龙 译 沃趣科技

原作者:Bane Radulovic

译者:    邱大龙

审核:    魏兴华

随着Oracle 12c的发布,也就意味着全新版本的ASM面世了。已知的重大新特性有Flex ASM,数据预校验和更加便捷的磁盘管理操作。下面针对这几个方面进行详细介绍。

Flex ASM
Flex ASM特性可以允许ASM实例只运行在集群中某些节点上。默认安装将会创建3个ASM实例,而不管集群中节点的数量。一个ASM实例可以为本地和远端数据库提供服务。如果一个ASM实例crash,数据库实例会fail over到另一个ASM实例,而不会crash。随着Flex ASM的引入,又出现了一个新的实例类型 -- I/O server或者叫ASM代理实例,在Flex集群环境中,一般会有几个(默认3个)I/O server实例,为间接客户端(典型的有ACFS集群文件系统)提供服务。一个I/O server可以和ASM实例运行在相同节点,也可以在不同节点,它的功能是从ASM实例(本地或远程)那里获得间接客户端(例如acfs)的元数据信息。
译者注:作者在这里对ASM 代理实例的描述可能会让大家产生误解,其实每一个要使用ACFS的节点都必须在本地存在ASM代理实例,否则acfs将不能被挂载。
另外,Flex ASM是12c的可选特性。

Physical metadata replication
在ASM 12c中,除了会复制每个磁盘的磁盘头(从版本11.1.0.7开始有这个功能),还会复制allocation table-AT表。这些功能让ASM可以应对磁盘的逻辑和物理损坏。ASM磁盘组新增的PHYSMETAREPLICATED属性就是用来追踪磁盘组的元数据复制状态的。
译者注:其实在10.2.0.5版本上磁盘头的信息也会有一份copy,同样,存放在AU1的倒数第二个ASM元数据块中。

物理元数据复制状态的标志位位于磁盘头(kfdhdb.flags)。一旦物理元数据被复制,这个标志位就会从0变为1,而且再也不会变为1了。(此后只会有:1代表元数据复制完毕,2 代表元数据复制中 两种状态)。

More storage
ASM 12c支持511个磁盘组,单个磁盘最大容量32PB。而在11G版本,ASM支持63个磁盘组,单个磁盘最大容量为2TB。

Online with power
ASM 12c中可以通过power值来控制fast resync操作过程中的并行度,从而提高性能。磁盘resync的检查点功能,可以在实例崩溃后,从rsync进程的断点处继续做恢复,而不用从头开始。ASM 12c也提供了resync操作完成的预估时间。为resync操作指定power的示例(power范围从1到1024):

Disk scrubbing - proactive data validation and repair
在ASM 12C中,normal和high冗余的磁盘组,会校验数据损坏然后自动修复。CONTENT.CHECK设置为true,就会在磁盘rebalacne过程中进行校验和修复。该操作也可以通过ALTER DISKGROUP SCRUB命令来手动执行。磁盘清理的操作可以在磁盘组,磁盘和文件级别进行,而且可以通过v$asm_operation视图来监控。

Even read for disk groups
在以前的ASM版本中,如果没有设置prefer failgroup,数据总是从主副本里读取。镜像副本的数据只有在主副本数据不可用的时候读取。12C出现的均衡读取的特性,每个读请求都会被发往load最轻的磁盘。这里的load最轻的磁盘指的是读请求数最少的磁盘。在非Exadata环境中,Oracle以及ASM 12.1版本以后,均衡读取功能默认被打开。在Exadata环境中,均衡读取功能只有在遭遇有存储节点盘不可用的时候才会被打开。
译者注:原文没有提供Exadata下遭遇何种失败的时候会启用均衡度,译者补充的信息参考自第二版Expert Oracle Exadata第九章Cell Disk Failure。
均衡读取功能只在做了normal或者high冗余的磁盘组中可用。

Replace an offline disk
12C有了ALTER DISKGROUP REPLACE DISK命令,这个命令混合了rebalance和fast mirror resync功能。不需要做整个磁盘组的rebalance,新替换的磁盘上的数据可以用partner磁盘数据来构建。这就大大降低了替换磁盘的时间。注意要被替换的磁盘必须是offline状态。如果磁盘offline的时间过期,磁盘将被drop,就会触发rebalance。当加入新磁盘时,又会触发一次rebalance。
译者注:在11G版本下,一个拥有几十块的failgroup的rebalance时间和一块盘的rebalance时间差异上并不是非常大,前者是后者的二到四倍时间,12C版本的出现将会大大加速后者的rebalance时间。

ASM password file in a disk group
ASM 11.2允许ASM spfile存放在磁盘组中。在12c,可以把ASM密码文件放在磁盘组中。与spfile不同,只有在ASM实例启动,包含密码文件的磁盘组mount起来之后,密码文件才可用。orapw工具有现在可以接受ASM磁盘组作为密码文件的存放位置。asmcmd也可以用来管理密码文件。
译者注:spfile的位置是通过磁盘头部分记录了它位于磁盘的具体物理位置。

Failgroup repair timer
12C版本进一步提供了Failgroup repair timer,之前版本提供disk repair timer,Failgroup repair timer默认为24小时,注意disk repair timer仍然默认为3.6小时。
译者注:对于为什么Failgroup repair timer的默认时间比disk repair timer时间长,比较容易理解,这个功能的初衷是为了迎合Exadata环境下一个failgroup都来自于一个存储节点,一整个存储节点不可用很大可能意味着存储节点临时故障。但是一个磁盘的故障大部分情况是,这个磁盘坏掉了。

Rebalance rebalanced
现在rebalance操作可以通过生成和查看详细的工作计划来估算时间。对应的命令为EXPLAIN WORK,视图为v$asm_estimate。在ASM 12c中,对于文件的rebalance操作有了优先级顺序 -- 关键的文件(比如控制文件和redo)比其他数据库文件优先rebalance。在Exadata中,rebalance可以卸载到存储节点做。

Thin provisioning support
ASM 12c 为某些操作(比如与磁盘组rebalance操作相关的)提供了精简配置。该特性默认情况下不打开,可以通过指定THIN_PROVISIONED属性为TRUE来打开。

Enhanced file access control (ACL)
文件的属主以及权限更改更加容易,比如,可以更改一个打开的文件的权限。ACL功能现在Windows系统上也可用了。

Oracle Cluster Registry (OCR) backup in ASM disk group
将ocr备份储存在磁盘组中,可以让任何需要恢复ocr的节点都访问到该备份。从而简化了ocr的管理。可以使用ocrconfig命令指定ocr备份的位置在ASM磁盘组中:

关于译者
邱大龙,沃趣科技数据库技术专家,主要参与公司产品实施、测试、维护以及优化。对SQL优化、数据迁移、备份容灾等有深入的研究,对大数据量数据迁移、故障恢复、高并发下数据库性能调优有丰富的经验。


关于沃趣杭州沃趣科技股份有限公司创建于2012年,是专注为国内外大型企业提供基于高性能、高可用、可扩展的开放数据库平台整体架构解决方案的国产厂商。沃趣的产品已广泛应用于证券、保险、医疗、广电传媒、银行、电信、能源电力、快递物流、公共事业、大型企业等,为这些行业用户持续提供行业解决方案及服务支持。研发中心位于杭州,同时在北京、上海、成都、兰州、沈阳建立了分支机构,负责国内的销售和服务。

我们始终坚信,数据是驱动企业创新的源动力!坚持围绕企业数据库做好一件事

                      ——让高性能触手可及!


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存