理解ASM的Extent

ASM中分配空间的单位是AU,Extent包含1个或多个AU。

在11g之前,1个Extent对应1个AU。而从11.1.0开始,Oracle引入了Variable Sized Extents,ASM会根据文件的大小,自动决定Extent的大小,具体算法如下:
1、AU小于4MB的:
  • 头20000个Extent(0-19999,20GB),Extent大小=1*AU
  • 之后的20000个Extent(20000-39999,20GB-40GB),Extent大小=4*AU
  • 再往后的Extent(40000+,40GB以上),Extent大小=16*AU
2、AU大于等于4MB的,并且RDBMS compatible为11.2.0.4及以上的,ASM会根据Application Block Size来计算Extent的大小
通过引入 Variable Sized Extents,可以减少SGA的内存,并且提升性能。

我们来看看现实环境中Extent分配情况:
1、小数据文件
FILE_NAME                                                                     SIZE(MB)
--------------------------------------------------------------------------- ----------
+DATA01/HERA/DATAFILE/system.258.940635333                                         790

该数据文件只有790MB,按上述的分配规则,该数据文件的Extent=1*AU
09:31:28 nolog> select distinct size_kffxp from x$kffxp where number_kffxp = 258;


SIZE_KFFXP
----------
         1

上述信息显示,确实只有1AU这么一种情况。

2、较大的数据文件
FILE_NAME                                                                     SIZE(MB)
--------------------------------------------------------------------------- ----------
+DATA01/HERA/DATAFILE/test.363.941274405                                         24576

该数据文件为24G,按上述的分配规则,该数据文件的Extent有两种情形:1AU和4AU
09:03:51 nolog> select distinct size_kffxp from x$kffxp where number_kffxp = 363;


SIZE_KFFXP
----------
         1
         4

上述信息显示,实际分配情况是符合分配规则的。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13885898/viewspace-2137251/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/13885898/viewspace-2137251/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值