初步认识oracle逻辑存储体系

Oracle的存储结构关系:

图1:oracle的物理和逻辑存储关系

数据库的逻辑单元有表空间、段、区间、数据块,在物理上,数据存放在磁盘的数据文件上面,也存放在操作系统上的blcok。

Oracle的blcok大小为os block大小的倍数,查看一下oracle11g的block大小为8KB

逻辑存储体系:一个数据库包含一个或多个表空间,一个表空间包含一个或多个段,段包含一个或多个区,每一个区包含多个数据块。

图2:段、区、数据块的关系

数据块:数据库使用和分配的最小存储单元,Oracle所有对数据的操作和空间分配,实际上都是针对数据块Block的操作。我们从数据表中搜索出一行,实际中Oracle就会从内存缓冲区(或者硬盘)中读取到该行所在的数据块,再返回这数据块上的指定数据行。Oracle无论是在缓冲区,还是在硬盘,进行数据操作的最小单位也就是数据块。

段segment:segment是数据库的对象,用来存储表、索引的存储容器。

表空间:表空间是存放段,在物理上一个表空间可以存放一个或者多个数据文件。因此一个段的多个区都在一个表空间。

图3:表空间与数据文件的关系

一个数据库必须要有system、sysaux表空间。Oralcle建议至少创建一个表空间去存储用户信息和程序数据。

图4:表空间的分类

表空间间的管理:主要有本地管理和字典管理

      

图5:表空间的管理方式

本地管理:在数据文件头部添加位图来记录区的使用与空闲,1为使用,0表示被释放。

当extent被使用或者被释放,oracle会更新头部的记录来反映这个变化,不产生回滚信息。因为仅仅操作数据文件头部的几个数据块,不用操作数据字典,LMT比DMT要快。

图6:bitmap manage storage

字典管理oracle将表空间信息维护在oracle的数据字典中,空闲空间被记录在SYS.FET$表中,已使用空间记录在SYS.UET$表。

Oracle的存储结构关系:

图1:oracle的物理和逻辑存储关系

数据库的逻辑单元有表空间、段、区间、数据块,在物理上,数据存放在磁盘的数据文件上面,也存放在操作系统上的blcok。

Oracle的blcok大小为os block大小的倍数,查看一下oracle11g的block大小为8KB

逻辑存储体系:一个数据库包含一个或多个表空间,一个表空间包含一个或多个段,段包含一个或多个区,每一个区包含多个数据块。

图2:段、区、数据块的关系

数据块:数据库使用和分配的最小存储单元,Oracle所有对数据的操作和空间分配,实际上都是针对数据块Block的操作。我们从数据表中搜索出一行,实际中Oracle就会从内存缓冲区(或者硬盘)中读取到该行所在的数据块,再返回这数据块上的指定数据行。Oracle无论是在缓冲区,还是在硬盘,进行数据操作的最小单位也就是数据块。

段segment:segment是数据库的对象,用来存储表、索引的存储容器。

表空间:表空间是存放段,在物理上一个表空间可以存放一个或者多个数据文件。因此一个段的多个区都在一个表空间。

图3:表空间与数据文件的关系

一个数据库必须要有system、sysaux表空间。Oralcle建议至少创建一个表空间去存储用户信息和程序数据。

图4:表空间的分类

表空间间的管理:主要有本地管理和字典管理

      

图5:表空间的管理方式

本地管理:在数据文件头部添加位图来记录区的使用与空闲,1为使用,0表示被释放。

当extent被使用或者被释放,oracle会更新头部的记录来反映这个变化,不产生回滚信息。因为仅仅操作数据文件头部的几个数据块,不用操作数据字典,LMT比DMT要快。

图6:bitmap manage storage

字典管理oracle将表空间信息维护在oracle的数据字典中,空闲空间被记录在SYS.FET$表中,已使用空间记录在SYS.UET$表。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值