欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle 11g的Deferred Segment Creation

程序员文章站 2022-06-08 19:36:49
...

本篇主要介绍Oracle 11g中推出的ldquo;延迟段创建rdquo;(Deferred Segment Creation)特性,以及当我们使用这种特性时,需要注

本篇主要介绍Oracle 11g中推出的“延迟段创建”(Deferred Segment Creation)特性,,以及当我们使用这种特性时,需要注意的问题。

  1)Deferred Segment Creation

  在Oracle中,“表空间(Tablespace)、段(Segment)、分区(Extent)和块(Block)”是逻辑存储结构的四个层次。对数据表而言,通常是由一个或者多个段对象(分区表)Segment组成。也就是说,在数据表创建的时刻,Oracle会创建一个数据段Segment对象与之对应。

  当Segment创建之后,Oracle空间管理机制会根据需要分配至少一个extent作为初始化。每个extent的大小需要根据不同tablespace进行配置。但是在11g之前,数据表的创建同时,就发生了空间Segment分配的过程。但是在Oracle 11g中,引入了Deferred Segment Creation特性。

  首先我们创建一个数据表justForTest,来观察数据库是否为此表分配segment。

SQLjustForTest(test1 varchar2(2)); Table created

  但是,对应的段segment对象,却没有创建出来,如下:

; SEGMENT_NAME BYTES BLOCKS EXTENTS ------------ ---------- ---------- ----------