#ASM 翻译系列第三十一弹:ASM INTERNAL How many allocation units per file

本文探讨ASM(Automatic Storage Management)文件的空间分配,指出ASM空间分配的最小单位是AU,extent是分配单位。在11.2版本中,存在可变extent特性,对于超过一定数量extent的文件,每个extent会包含不同数量的AU。通过示例,解释了文件大小、BYTES和SPACE列的区别,并分析了超出特定extent数量后,额外AU的用途——存储ASM元数据。结论指出,ASM空间占用受文件大小和磁盘组冗余度影响。
摘要由CSDN通过智能技术生成

原文: How many allocation units per file
作者: Bane Radulovic
译者:邱大龙,沃趣科技数据库技术专家,主要参与公司产品实施、测试、维护以及优化。对SQL优化、数据迁移、备份容灾等有深入的研究,对大数据量数据迁移、故障恢复、高并发下数据库性能调优有丰富的经验。
审校:魏兴华
责编:仲培艺

本文主要是对ASM文件的空间分配进行一些探讨和研究。

ASM空间分配的最小单位是AU,默认的AU size是1MB,但在Exadata下AU的默认大小是4MB。

ASM文件的空间分配是以extent为单位,每一个extent是由一个或多个AU组成,在11.2版本,前20000个extent,每一个extent由1个AU组成,接下来的20000个extent,每一个由4个AU组成,再超出的extent,每一个由16个AU组成。这个特性被叫做可变extent。而在11.1版本,extent的增长则遵循的是1-8-64倍AU的方式。在版本10,可变extent这个特性还没出现,因此所有的extent的大小都是1个AU。

Bytes vs space

视图V$ASM_FILE中,有两列是关于空间分配的:BYTES和SPACE,它们的定义如下:

  • BYTES - 文件的大小
  • SPACE - 文件实际占用的ASM空间的大小

这两列的定义有一些细微的差异,但是这两列的数值差异可能非常大,下面来实际地看一下,首先交代我的测试环境,ASM和DB的版本为11.2.0.3,使用ASMLIB方式管理的磁盘:

可以通过如下查询来简单了解我的环境中磁盘组data的基本情况,例如AU的大小、冗余的级别,我的数据文件大多都位于这个磁盘组中。

SQL> select NAME, GROUP_NUMBER, ALLOCATION_UNIT_SIZE/1024/1024 "AU size (MB)", TYPE
from V$ASM_DISKGROUP
where NAME='DATA';

NAME             GROUP_NUMBER AU size (MB) TYPE
---------------- ------------ ------------ ------
DATA                        1            
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值