`

oracle一些概念

阅读更多

1:高水位:曾经包含的数据的最右边的块。

一般性我们删除数据,使用delete 语句,但是delete语句不能够清高水位,可以使用truncate 清除高水位。一般性需要进行频繁删除,插入的表会用到。oracle全表扫描扫描的是水位下的所有块,对于删除,插入很频繁的表,要注意高水位问题会导致数据表没多少数据,读取性能很差的问题。

2:逻辑存储上的4个粒度:

    a:块的定义:粒度最小的存储单位,现在标准的大小是8kb,oracle的I/O操作也是也该单位来操作,而不是按照多少行来操作。

    b:区:由一系列相邻的块而组成,这也是ORACLE空间分配的基本单位,举个例子来说,当我们创建一个表PM_USER时,首先ORACLE会分配一区的空间给这个表,随着不断的INSERT数据到PM_USER,原来的这个区容不下插入的数据时,ORACLE是以区为单位进行扩展的,也就是说再分配多少个区给PM_USER,而不是多少个块.

    c:段:是由一系列的区所组成,一般来说,当创建一个对象时(表,索引),就会分配一个段给这个对象.所以从某种意义上来说,段就是某种特定的数据.如CREATE TABLE PM_USER,这个段就是数据段,而CREATE INDEX ON PM_USER(NAME),ORACLE同样会分配一个段给这个索引,但这是一个索引段了.查询段的信息可以通过数据字典: SELECT * FROM USER_SEGMENTS来获得,

   d:表空间:包含段,区及块.表空间的数据物理上储存在其所在的数据文件中.一个数据库至少要有一个表空间.

 

 


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics