oracle data block , extent 和segment区别
发布时间:2024年01月24日
data block是数据库中最小的逻辑存储单元。当数据库的对象需要更多的物理存储空间时,连续的data block就组成了extent . 一个数据库对象拥有的所有extents被称为该对象的segment.
Data block、extent和segment是数据库中不同层次的数据存储和管理单位,它们各自具有不同的功能和特点。
- Data block(数据块):
Data block是数据库中最小的逻辑存储单位,也是数据实际存储的最小单位。它的大小是固定的,由操作系统和数据库管理系统(DBMS)共同决定。Data block用于存储实际的数据记录,当数据被插入数据库时,它们首先被存储在Data block中。 - Extent(扩展区):
Extent是由若干个连续的Data blocks组成的区域。它的大小也由DBMS预先确定。一个或多个Data blocks组成一个Extent。当Data block中的空间用尽时,新的数据记录会被添加到新的Extent中。Extent通常用于表示一段连续的存储空间,而不管它包含了多少个Data blocks。 - Segment(段):
Segment是由一个或多个Extents组成的集合。它是数据库对象(如表、索引等)在磁盘上的物理表示。一个数据库对象拥有的所有extents被称为该对象的segment。每一个segment有不同的数据结构,例如每一个表的数据就存储在自己的data segment,每一个索引存储在自己的索引段。一个segment和他所有的extents都是在一个表空间中,并且一个segment可以跨越几个数据文件。
总结来说,Data block是数据库中最小的逻辑存储单位,用于存储实际的数据记录;Extent是由若干个连续的Data blocks组成的区域,表示一段连续的存储空间;而Segment是由一个或多个Extents组成的集合,是数据库对象在磁盘上的物理表示。
文章来源:https://blog.csdn.net/weixin_42095178/article/details/135721945
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!