ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 043-153

043-153

原创 Linux操作系统 作者:jbymy2000 时间:2012-03-10 09:21:31 0 删除 编辑
153. View the Exhibit and examine the properties of the USERS tablesp
ace. You execute the following statement to shrink the TRANS table ex
isting on the USERS tablespace:
SQL> ALTER TABLE trans SHRINK SPACE CASCADE;
Which objects would be affected by this command? (Choose all that app
ly.) Exhibit:
A. the materialized views based on the TRANS table
B. the materialized views log of the TRANS table
C. the TRANS table
D. the B*Tree indexes on the TRANS table
E. the large object (LOB) segments of the TRANS table
Answer: C,D
使用shrink space 时,索引会自动维护。如果在业务繁忙时做压缩,可以先shrink space
compact,来压缩数据而不移动HWM,等到不繁忙的时候再shrink space 来移动HWM。
Move 会移动高水位,但不会释放申请的空间,是在高水位以下(below HWM)的操作。而
shrink space 同样会移动高水位,但也会释放申请的空间,是在高水位上下(below and
above HWM)都有的操作。
shrink 有两个前提条件:
1、表必须启用row movement(rowid 要发生变化)
2、表段所在表空间的段空间管理(segment space management)必须为auto
另关于ASSM 说明:
9i 以前,表的剩余空间的管理与分配都是由链接列表freelist 来完成的,因为freelist
存在串行的问题因此容易引起往往容易引起段头的争用与空间的浪费(其实这一点并不明
显),最主要的还是因为需要DBA 花费大量的精力去管理这些争用并监控表的空间利用
ASSM,它首次出现在Oracle 920 里。有了ASSM,链接列表freelist 被位图所取代,它
是一个二进制的数组,能够迅速有效地管理存储扩展和剩余区块(free block),因此能够
改善分段存储本质.
create tablespace demo datafile '/ora01/oem/demo01.dbf ' size 5m
EXTENT MANAGEMENT LOCAL --定是本地管理
SEGMENT SPACE MANAGEMENT AUTO -- ASSM 管理的标志;
带有ASSM 的本地管理tablespace 会略掉任何为PCTUSED、NEXT 和FREELISTS 所指定的值,
INITIAL 参数仍然是需要的,因为Oracle 不可能提前知道初始表格加载的大小。对于ASSM
而言,INITIAL 最小的值是三个块。
新的管理机制用位图来跟踪或管理每个分配到对象的块,每个块有多少剩余空间根据位
图的状态来确定,如>75%,50%-75%,25%-50%和<25%,也就是说位图其实采用了四个状态位来
代替以前的pctused,什么时候该利用该数据块则由设定的pctfree 来确定。
使用ASSM 的一个巨大优势是,位图freelist 肯定能够减轻缓冲区忙等待(buffer busy
wait)的负担,这个问题在Oracle9i 以前的版本里曾是一个严重的问题 。
有了ASSM 之后,Oracle 宣称显著地提高了DML 并发操作的性能,因为(同一个)位图
的不同部分可以被同时使用,这样就消除了寻找剩余空间的串行化。根据Oracle 的测试结
果,使用位图freelist 会消除所有分段头部(对资源)的争夺,还能获得超快的并发插入
操作.
Oracle9i 的位图分段管理还是有一些局限性的:
1. 一旦DBA 被分配之后,它就无法控制tablespace 内部的独立表格和索引的存储行为。
2. 大型对象不能够使用ASSM,而且必须为包含有LOB 数据类型的表格创建分离的
tablespace。
3.你不能够使用ASSM 创建临时的tablespace。这是由排序时临时分段的短暂特性所决定的。
4. 只有本地管理的tablespace 才能够使用位图分段管理。
5 使用超高容量的DML(例如INSERT、UPDATE 和DELETE 等)的时候可能会出现性能上的问

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

上一篇: 043-152
下一篇: 043-154
请登录后发表评论 登录
全部评论

注册时间:2012-01-10

  • 博文量
    416
  • 访问量
    203093