本地管理表空间和字典管理表空间的特点,ASSM有什么特点

字典管理表空间(Dictionary-Managed Tablespace简称DMT),8i以前包括以后都还可以使用的一种表空间管理模式,通过数据字典管理表空间的空间使用。

Oracle使用两个字典来记录Extents的使用情况:SYS.FET$记录空闲的Extents,SYS.UET$记录使用的Extents。在分配和释放分区时,都要修改者两个字典。属于DML操作,存在竞争,每个动作都是一个事务,会产生UNDO记录。进行空间合并时也要同样操作方法。效率低下

本地管理表空间(Locally Managed Tablespace简称LMT),8i以后出现的一种新的表空间的管理模式,通过位图来管理表空间的空间使用。

通过数据头文件中的一个位图来记录本文件中数据库的使用情况,每个BIT代表数据块,通过改变bit值来表示Extents的分配使用或释放,不属于DML操作,也不会产生UNDO记录,可以自动跟踪连续的空闲空间。带来的优势:不需要使用字典SYS.FET$和SYS.UET$上的递归SQL调用;减少数据字典的竞争;不会产生UNDO记录;不再需要周期性合并操作。

例:创建了一个本地管理的表空间,区间统一大小分配为64K
SQL> create tablespace demo  
    datafile ‘/ora01/oem/oemdemo01.dbf‘ size 10m  
    extent management local uniform size 64k;

查询表 select * from dba_tablespace;可以得知

自动段空间管理(ASSM)

在920以前,表的剩余空间的管理与分配都是由连接列表freelist来完成的,因为freelist存在串行的问题,因此容易引起往往容易引起段头的争用与空间的浪费(其实这一点并不明显),最主要的还是因为需要DBA 花费大量的精力去管理这些争用并监控表的空间利用。

自动段空间管理(ASSM),它首次出现在Oracle920里。有了ASSM,连接列表freelist被位图所取代,它是一个二进制的数组,能够迅速有效地管理存储扩展和剩余区块(free block),因此能够改善分段存储本质,ASSM表空间上创建的段还有另外一个称呼叫Bitmap Managed Segments(BMB 段)

Create tablespace demo
datafile ‘/ora01/oem/demo01.dbf ‘
size 5m
EXTENT MANAGEMENT LOCAL -- Turn on LMT
SEGMENT SPACE MANAGEMENT AUTO -- Turn on ASSM;

一旦你定义好了tablespace,那么表和索引就能够使用各种方法很容易地被移动到新的tablespace里,带有ASSM的本地管理tablespace会略掉任何为PCTUSED、NEXT和FREELISTS所指定的值。

当表格或者索引被分配到这个tablespace以后,用于独立对象的PCTUSED的值会被忽略,而Oracle9i会使用位图数组来自动地管理tablespace里表格和索引的freelist。对于在LMT的tablespace内部创建的表格和索引而言,这个NEXT扩展子句是过时的,因为由本地管理的tablespace会管理它们。但是,INITIAL参数仍然是需要的,因为Oracle不可能提前知道初始表格加载的大小。对于ASSM而言,INITIAL最小的值是三个块。

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

使用ASSM的一个巨大优势是,位图freelist肯定能够减轻缓冲区忙等待(buffer busy wait)的负担,这个问题在Oracle9i以前的版本里曾是一个严重的问题。

转载:http://blog.csdn.net/yuan22003/article/details/6714341

本地管理表空间和字典管理表空间的特点,ASSM有什么特点

时间: 2024-10-10 23:30:12

本地管理表空间和字典管理表空间的特点,ASSM有什么特点的相关文章

开源 java CMS - FreeCMS2.3字典管理

原文地址:http://javaz.cn/site/javaz/site_study/info/2015/30733.html 项目地址:http://www.freeteam.cn/ 字典管理 从FreeCMS 2.3开始支持 字典分类管理 从左侧管理菜单点击字典分类进入. a.添加 点击"添加"按钮 输入相关属性后点击"确定"即可. b.编辑 选择分类,点击"编辑"按钮 输入相关属性后点击"确定"即可. c.删除 选择分类

【翻译自mos文章】在一个使用uniform size的 本地管理的表空间中建立一个表,为什么会忽略INITIAL 参数?

翻译:Why Does a Table Created in a Locally Managed Tablespace With Uniform Extents Ignore INITIAL? (文档 ID 753662.1) 在一个使用uniform size的 本地管理的表空间中建立一个表,为什么会忽略INITIAL 参数? 适用于: Oracle Database - Enterprise Edition - Version 8.1.5.0 to 11.1.0.7 [Release 8.1

oracle表空间创建及管理

一.数据文件和数据库逻辑存储结构: 一个表空间包含一个或多个数据文件,一个表空间包含一个或多个段,一个段包含一个或多个区,一个区包含一个或多个连续的数据库块,一个数据库块包含一个或多个操作系统块.段是对象存储基本单元,段中的区总是在同一个表空间中,可以跨数据文件.区是空间分配的基本单元,连续的数据块,不能跨数据文件.块是I/O 的基本单元,不能跨数据文件. 表空间的分类永久表空间 存放永久性数据,如表,索引等.临时表空间 不能存放永久性对象,用于保存数据库排序,分组时产生的临时数据.UNDO表空

3、创建数据库、表空间、权限管理、表、约束、序列

一.dos常用命令 右键→标记→选中要复制的内容→右击就可以完成赋值 ↑表示找前面代码 data 查看日志time 查看时间cls 清屏exit 退出regedit 注册表taskmgr 任务管理器compmgmt.msc计算机管理mspaint 画图板 开始 运行 命令 集锦 --------------------------------write----------写字板 notepad--------打开记事本shrpubw--------创建共享文件夹 calc-----------启

Oralce tablespace表空间创建和管理

1.表空间的概述 1.表空间是数据库的逻辑组成部分. 2.从物理上讲,数据库数据存放在数据文件中: 3.从逻辑上讲,数据库是存放在表空间中,表空间由一个或者多个数据文件组成. 2. oracle的逻辑组成 1.oracle 的逻辑结构包含 表 空间 段 区 块 2.数据库是由表空间构成,表空间又是有段构成,段是由区构成,区是由 oracle的块构成,这样做是为了提高数据库的效率 3.作用          A.控制数据库占用的磁盘空间           B dba 可以将不同数据类型部署到不同

Oracle tablespace 表空间创建和管理

1.表空间的概述 1. 表空间是数据库的逻辑组成部分. 2. 从物理上讲,数据库数据存放在数据文件中: 3. 从逻辑上讲,数据库是存放在表空间中,表空间由一个或者多个数据文件组成. 2.oracle的逻辑组成 1.oracle 的逻辑结构包含 表 空间 段 区 块 2.数据库是由表空间构成,表空间又是有段构成,段是由区构成,区是由 oracle的块构成,这样做是为了提高数据库的效率 3.作用 A.控制数据库占用的磁盘空间 B dba 可以将不同数据类型部署到不同的位置,这样 有利于i/0的性能,

数据库系列学习(二)-数据表的创建和管理

1.数据类型 A:整数类型 bit,int,smallint,tinyint [与操作系统位数有关] B:数值类型 decimal,numeric,money,smallmoney,float,real [可存小数] C:字符相关类型 char,varchar,text,nchar,nvarchar,ntext D:日期时间类型 datetime(精确到0.01秒),smalldatetime(精确到分钟),timestamp E:二进制类型 image [经图片,视频转为二进制,保存到数据库]

数据库表的创建、管理和数据操作(实验一),数据库创建

数据库表的创建.管理和数据操作(实验一),数据库创建 今天我们就以实验的形式对表的创建.管理和数据操作进行学习,上课吧. [实验目的]:了解SQL语言的使用,进一步理解关系运算,巩固数据库的基础知识.[实验要求]:利用SQL语言进行数据库表的各种操作:1.数据库表的创建.修改和删除操作.2.向表中进行数据的插入.删除和修改操作.[实验内容]1. 利用数据定义语句在实验一创建的stu_DB库中建立学生管理系统的三个表:Student.Course.SC.2.利用INSERT.UPDATE和DELE

数据表的创建与管理

在数据库中通过数据表来存放记录,在数据表中经常会碰到主外键,索引,约束等条件,下面就详细一下. 主键 一张数据表中唯一的标识,确保一张数据表中不会出现两个完全相同的数据记录. 主键可以定义在多个列上,也就是说在定义数据库的时候可以将数据表中的多个列合并在一起作为该表的主键 外键 用来表与表之间关系的.如果字段F是表B中的字段,而且是表A的主键的话,那么列F就是表B的外键.用来执行增 删改查的时候,两张表一致性. 外键删除时,对应的表中的记录也应该做出相应的调整,分为三种方式 1.CASCADE: