`
byebyegov5qq
  • 浏览: 1216319 次
文章分类
社区版块
存档分类
最新评论

Oracle 自动段空间管理(ASSM)

 
阅读更多
从oracle 9i开始,管理段空间有两种方法:手动段空间管理和自动段空间管理(Auto Segment Space Management,ASSM);

  ASSM用位图来跟踪或管理每个分配到对象的块,每个块有多少剩余空间根据位图的状态来确定,如>75%,50%-75%,25%-50%和<25%,也就是说位图其实采用了四个状态位来代替以前的PCTUSED,什么时候该利用该数据块则由设定的PCTFREE来确定。

  对于ASSM,只需控制与空间使用相关的一个参数:PCTFREE.创建段时也可以接受其他参数,但是这些参数将被忽略。

  在存储/段 特征这方面,应用于ASSM段的存储设置只有:BUFFER_POOL PCTFREE INITRANS MAXTRANS(仅用于9i,在10g及以上版本中,所有段都会忽略这个参数。)

  BUFFER_POOL : 可以将表放到keep或其它中,如: ALTERTABLE Table_Name STORAGE ( BUFFER_POOL KEEP) ;PCTFREE:该参数用于告诉oracle应该在块上保留多少空间来完成将来的更新,默认10%.如果自由空间百分比高于PCTFREE中指定的值,这个块就被认为是自由的。

  使用ASSM时,PCTFREE会限制能否将一个新行插入到一个块中,但是它不会控制一个块是否在FRRELIST上,因为ASSM根本不会使用FREELIST,在ASSM中PCTUSED也被忽略。

  PCTFREE有3种设置:太高、太低、刚刚好。如果把块的PCTFREE设置的太高,就会浪费空间。如果把PCTFREE设置为50%,而你从未更新数据,那么每个块都会浪费50%的空间。不过,在另一个表上,可能50%非常合理。如果行最初很小,现在想将行的大小加倍,但是倘若 PCTFREE设置太小,更新行时就会导致行迁移。

  行迁移是指(rowmigration)是指由于某一行变得太大,无法再与其余的行一同放在创建这一行的块中,而放到其它的块中。

  如果这种行迁移所占的比例相当大,而且有大量用户在访问这些行,访问这些数据的速度就会开始变慢,因为额外的i/o以及与i/o相关的闩定都会增加访问时间,缓冲区缓存的效率开始下降,因为需要缓存两个块,而如果没有行迁移只需要缓存一个块。另外表的大小和复杂性都有所增加。

  如何设置PCTFREE(ASSM):如果你插入了将要更新的大量数据,而且这些更新会频繁地增加行的大小,此时可以设置比较高的PCTFREE,因为这可以在插入后在块上预留大量空间。

  如果只想对表完成INSERT或DELETE,或者UPDATE只是对行大小影响比较小,此时可以设置比较低的PCTFREE.

  相关信息可参考:Oracle 自动段空间管理(ASSM:autosegment space management)

  http://blog.csdn.net/tianlesoftware/article/details/4958989 Oracle ASSM三级位图块结构http://www.eygle.com/archives/2007/07/oracle_assm_level3_bmb.html http://www.itpub.net/thread-99486-1-1.html


分享到:
评论

相关推荐

    Oracle数据库中利用ASSM改善分段存储

    表格空间增强了自动分段空间管理(ASSM),ASSM的tablespace是通过将SEGMENT SPACE MANAGEMENT AUTO子句添加到tablespace的定义句法里而实现的。通过使用位图freelist取代传统单向的链接列表freelist,ASSM的...

    Oracle自动内存管理ASMM

    Oracle 自动内存管理 ASMM assm的内部特性值得一看

    Oracle9i自动分段空间管理改善分段存储

    文中介绍了Oracle9i增强了本地管理减轻了数据字典的负担、增强了自动分段空间管理(ASSM),因此能够改善分段存储本质。

    oracle-dmt-lmt-mssm-assm

    dmt,lmt是管理segment中的extent的,而mssm和assm是管理extent中的block的。 需要说明的时不论在dmt还时lmt下都可以使用mssm,而在dmt下只能使用mssm,而下面要介绍的assm只在lmt下才支持。

    Oracle DBA笔试及面试题汇总

     3:本地管理表空间和字典管理表空间的特点,ASSM有什么特点?  4:备份如何分类?  5:如果一个表被drop,在有完善的归档和备份的情况下,如何恢复  6:rman是什么,有何特点?  7:standby的特点  8:对于一个...

    Oracle11g Memory&Storage Overview

    本ppt较为系统的介绍了Oracle11g的内存与存储管理,主要目录如下: 1.Memory Overview:  --SGA Parameters  --Automatic Shared Memory Management  --Oracle 11g参数设置建议  --Oracle Database Memory ...

    Oracle数据文件收缩实例

    本文以FreeList为线索对Oracle的存储管理的原理进行较深入的探讨,涉及Oracle段区块管理的原理,FreeList算法等。而与FreeList密切相关的一个重用特性HWM,与sql性能密切相关,本文也作了原理分析介绍。在原理探讨的...

    oracle truncate恢复

    如果数据文件头是完好的,则ODU会自动从文件头里面获取表空间号,文件号,相对文件号,文件块大小等。表空间号,文件号和相对文件号可以写为0。 注意:ODU将检查control.txt文件中的第一个数据文件是否为SYSTEM表...

    ITPUB电子杂志

    关于shared pool的深入探讨 32bit oracle扩展SGA原理 32bit oracle中SGA_MAX_SIZE与单个进程PGA的制约关系 bitmap索引的一点探究 关于B*tree索引(index)的中度理解 本地管理表空间 倾力大奉献--...

    OCM考试全面解析及经验分享

    OCM考试全称为Oracle Certified Master(Oracle认证大师),是在OCA(Oracle认证专员Oracle Certified Associate)、OCP(Oracle认证专家Oracle Certified Professional)之后更高一级的Oracle技术认证,也是Oracle技术...

    Assm.rar_SIC ASSEMBLER_ob_sic_two-pass assembler

    sic assembler output pass one and pass two finally, put ob file

    (E文)基于成本的Oracle优化法则.pdf

    5.1.3 减少表的争用(ASSM) 92 5.1.4 减少RAC中的争用 (自由列表群) 95 5.2 列顺序 96 5.3 额外的列 99 5.4 校正统计信息 101 5.4.1 sys_op_countchg()技术 101 5.4.2 非正式策略 105 5.5 待处理的零碎问题 106 5.6 ...

    assm.rar_Micro Mechanical_level set_level set模拟_水平集_水平集 三维

    应用三维Level Set数值模拟技术实现硅基微机械湿法刻蚀仿真研究\LevelSetMethods水平集源码

    assm-2014-10-20.zip_单片机开发_Visual_C++_

    Assigment 1 bk_2014Chu tho va nhung nguoi ban

    ansysworkbench设置材料属性.doc

    ansysworkbench设置材料属性.doc

    电机优化计算 matlab maxwell Simplorer,目标最优化求解

    以一台130口径ASSM为例,对电机的永磁体形状和槽口宽进行了参数化扫描分析sweep ansys,并以齿槽转矩为目标函数进行了最优化optimization求解;在Maxwall 3D瞬态场下对永磁电机控制影响较大的电感参数Ld、Lq进行了...

    带工程图另存外挂.swp

    本软件实际上是一个SolidWorks的宏文件,旨在sw的part和assm模型另存时,如果原模型已经存在关联的工程图,另存为其他名称时连带原模型关联的工程图一并另存;并且关联到另存模型. 帮助工程师提高软件的使用效率. 1.选择...

Global site tag (gtag.js) - Google Analytics