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

相关推荐
前端世界13 小时前
MySQL 基础入门(学习第4天)——约束与 DML 操作详解
数据库·学习·mysql
nianniannnn14 小时前
Qt QMessageBox知识点
开发语言·数据库·qt
—Miss. Z—14 小时前
计算机二级MySQL——简单应用题(存储过程&存储函数)
数据库·oracle·php
Vect__15 小时前
MySQL 数据类型和约束:从字段设计到表结构建模
数据库·mysql
糖果店的幽灵15 小时前
langgraph的分支结构之 - 静态分支详解
java·服务器·数据库·langgraph
张人玉15 小时前
C# WinForms——工厂管理系统(C# WinForms)
数据库·sqlite·c#·winform
AC赳赳老秦16 小时前
招投标公开数据自动化采集实战:基于 OpenClaw 的定时抓取与业务关键词精准推送
运维·服务器·数据库·自动化·测试用例·deepseek·openclaw
后端优选官17 小时前
上海Agent开发公司:企业级智能体软件的技术架构与落地评估
数据库·人工智能·架构·软件开发·开发经验·上海
JustNow_Man17 小时前
`openspec/config.yaml` 解析与生效机制
数据库
Databend17 小时前
用 QUALIFY 写出更清晰的窗口函数 SQL
数据库·sql·数据分析