OracleA M三级位图块结构

文章作者 100test 发表时间 2008:04:02 14:01:57
来源 100Test.Com百考试题网


  前几天Piner发布了一个悬赏:寻找ASSM三级位图块的文章,同时给出了对于ASSM结构的猜想。

  Piner猜想的结构和我想像的不同,我认为ASSM的结构应该如下图所示:

  

  也就是说我认为BMB的结构应该是均衡的,同时段头的PAGETABLE SEGMENT HEADER同时充当了第0个3级位图块的角色。

  在PAGETABLE SEGMENT HEADER中实际上我们可以很容易的看到这样的输出:

--------------------------------------------------------

Segment Type: 1 nl2: 103 blksz: 2048 fbsz: 0 

L2 Array start offset: 0x00000434

First Level 3 BMB: 0x00000000

L2 Hint for inserts: 0x0355cfad

Last Level 1 BMB: 0x03560c9c

Last Level II BMB: 0x0355cfad

Last Level III BMB: 0x00000000

Map Header:: next 0x034000bf #extents: 51 obj#: 33141 flag: 0x20000000

Extent Map

-----------------------------------------------------------------

  也就是说,这里记录了First Level 3 BMB和Last Level III BMB的地址,那么这就足够了,这里的双向指针完全可以进行Level 3级位图块的导航,而这第0个三级位图块也即段头,并无需记录所有3级位图块的地址。

  由于产生另外一个3级位图块并不容易,所以Piner才提出悬赏,他构造了一个873G的大表,仍然没有产生另外的3级位图块:

SQL> 0select bytes/1024/1024/1024 "SIZE(G)" from user_segments where 
segment_name=TEST. SIZE(G) ---------- 873.25


相关文章


Oracle11g备份恢复功能增强
使用排序哈希簇来加提高查询速度
快速了解分布式数据库的主要特点
sqlldr加载数据到不同表的问题
OracleA M三级位图块结构
关于Oracle字符集的几点感悟
从纵横五个方面精细优化你的Oracle
快速、简便的使用AJAX技术操作的三部曲
RMAN高级应用之不同环境下的复制流程
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛