Oralce逻辑结构

Oralce学习之逻辑结构

逻辑结构就是Database中的数据文件的组织结构。

表空间(TABLESPACE)、段(SEGMENT)、区(EXTENT)、块(BLOCK

TABLESAPCE:系统表空间,回滚表空间,临时表空间(SMON进程要负责的部分),用户表空间。

SEGMENT:和用户建立的table相对应。

EXTENT:他的存在是对BLOCKSEGMENT之间大小差异的一种缓冲,优化。

BLOCK:数据库中存储的最小的结构,有整数倍的OS的数据块组成。(OS的块为0.5KBOracle的一般为8KB

OK,微观看过了,来宏观看一下数据库的组成:

1、数据块头包含数据块的概要信息,如块地址,数据块所属的段和类型

2、表目录保存插入的数据所属的表的信息

3、行目录存放插入的行的地址

4、可变空间就是freespace,在数据进行插入,更新时可能会需要额外的空间,就从这边来。

5、行数据区呢,就是存储具体的行或者索引的信息,占了数据块的绝大部分空间。

 

1,2,3部分,也就是数据块头、表目录区、行目录区没有存储具体的数据,而是存着用于管理的信息,称为管理开销(overhead)。一般为84--107B

 

基本的块就是这样,当create一个table时,系统会建立一个segment(前面说过table其实就是对应segment),并且会分配一定的初始空间也就是一些块,当插入数据,初始空间(initial extent)不够用的时候,会自动再分配给新的incremental extent(扩展段),这也验证了段(extent)是一个逻辑上的过渡,缓冲segmentblock的鸿沟。

前面是说table的内部,那外部呢,会有一个归属,就是tablespace

(当然这些表空间,段,区,块的大小以及管理方式都是可以设置的,在后面的例子中说明)此为用户表空间。

那系统表空间就是为系统服务的区域。临时表空间呢,顾名思义,把数据表空间的数据那部分出来操作之用。回滚表空间,当然是用来缓存即将使用的数据,如果又不需要了就rollback掉。

 

举个小栗子:

create tablespace tbs_test1

datafile 'D:code\oracle\oradata\demodb\DEMO.dbf' size 10M

autoextend on next 20M maxsize 40M

extent management local

uniform size 10M

segment space management auto

Datafile :存放数据的文件  size:初始大小

Autoextend:自动扩展以及最大尺寸

Extent management:区的管理方式

Uniform:扩展区的大小

Segment:段的管理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值