oracle存储结构-----逻辑存储结构(表空间、段、区、块)

文章目录


oracle存储结构图(逻辑存储+物理存储)

oracle逻辑存储结构图



逻辑存储结构、表空间、段、区、数据块的关系:

1、逻辑存储结构包括表空间,段,区,数据块。逻辑结构之间的关系是:多个块组成 区,多个区组成段,多个段组成表空间,多个表空间组成逻辑数据库。

2、·· 表空间(多个表空间组成逻辑数据库):数据表空间(普通表空间)、system表空间、sysaux表空间、临时表空间、回滚表空间等

3、··段(多个段组成表空间):数据段(保存表记录)、索引段(保存索引数目)、临时段(临时数据)、回滚段(回滚数据)不同的数据库对象有不同类型的段组成段的区可以是连续的,也可以是不连续的

4、·· 区(多个区组成段),区是由连续的块组成

5、·· 数据块(多个数据块组成区)

块相当于一张白纸,区相当于白纸定成的文档,段相当于文档袋来装各种文档,表空间相当于抽屉来存放文档袋,不同的抽屉组成了抽屉柜相当于逻辑存储结构

1、数据 块(block)---逻辑存储最小单位

数据块是Oracle数据库逻辑存储结构中的存储最小单位,也是执行数据库输入输出的最小存储单位。通常Oracle数据块是操作系统块的整数倍。

2、 数据区(extent)--存储空间分配和回收的最小单位

数据区是由一组连续的Oracle数据块所构成的Oracle存储结构,由一个或多个数据块组成。一个或多个数据区组成一个段,当段中所有空间被使用完后,Oracle系统将自动为该段分配一个新的数据区,可见,数据区是Oracle存储分配的最小单位。

1、区是由物理上连续存放的块所组成的。

2、区是oracle存储分配的最小单位

3、当段中已分配的区都写满,oracle就要在该方案对象所在的表空间中为该段分配下一个新的空白区,以便容纳更多的数据。

4、使用数据区的目的是用来保存特定数据类型的数据,也是表中数据增长的基本单位。在Oracle数据库中,分配存储空间就是以数据区为单位的,一个Oracle对象包含至少一个数据区。设置一个表或索引的存储参数包含设置它的数据区大小。

3、段(segment)-- 独立的逻辑存储结构

段是由一个或多个数据区构成的,它不是存储空间的分配单位,而是一个独立的逻辑存储结构用于存储表、索引或簇等占用空间的数据对象。一个段只属于一个特定的数据对象,每当创建一个具有独立段的数据对象时,Oracle将为它创建一个段。

1.数据段:数据段中保存的是表中的数据记录。建表时Oracle系统将为表创建数据段。当表中数据量增大时,数据段的大小自然也随着变大,数据段的增大过程是通过向其添加新的数据区来实现的。当创建一个表时,系统自动创建一个以该表的名字命名的数据段。

2.索引段:索引段中包含了用于提高系统性能的索引。一旦建立索引,系统自动创建一个以该索引的名字命名的索引段。

3.回滚段:回滚段中保存了回滚条目,Oracle将修改前的旧值保存在回滚条目中。利用这些信息,可以撤销未提交的操作,以便为数据库提供读入一致性和回滚未提交的事务,即用来回滚事务的数据空间。当一个事务开始处理时,系统为之分配回滚段,回滚段可以动态创建和撤销。

4.临时段:当执行创建索引。查询等操作时,Oracle可能会使用一些临时存储空间,用于暂时性地保存解析过的查询语句以及在排序过程中产生的临时数据,Oracle系统将在专门用于存储临时数据的表空间中为操作分配临时段。

4、表空间(tablespace)---最高级逻辑存储区域

表空间是Oracle数据库的最大逻辑划分区域通常用来存放数据表、索引、回滚段等数据对象。一个表空间由一个或多个数据文件(操作系统物理存储结构)组成,一个数据文件只属于一个表空间。表空间的大小等于所有从属于它的数据文件大小的总和。

oracle数据库体系详解: https://blog.csdn.net/m0_67929156/article/details/140133238?spm=1001.2014.3001.5501

相关推荐
1892280486135 分钟前
NY270NY273美光固态闪存NY277NY287
服务器·网络·数据库·科技·性能优化
星霜笔记4 小时前
Docker 部署 MariaDB+phpMyAdmin+Nextcloud 完整教程
运维·数据库·docker·容器·mariadb
wyiyiyi10 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
天宇_任10 小时前
Mysql数据库迁移到GaussDB注意事项
数据库·mysql·gaussdb
xiep143833351013 小时前
Ubuntu 安装带证书的 etcd 集群
数据库·etcd
Java小白程序员14 小时前
Spring Framework:Java 开发的基石与 Spring 生态的起点
java·数据库·spring
老虎062714 小时前
数据库基础—SQL语句总结及在开发时
数据库·sql·oracle
爱掘金的土拨鼠16 小时前
国产化dm数据库锁表解锁
数据库
庖丁解java16 小时前
N个Utils
数据库
Mr. zhihao16 小时前
SQL LEFT JOIN 与 WHERE 条件的隐藏坑
数据库·sql