《数据厍设计与开发》讲义 2.1.1.1磁盘访问是面向页面(数据块)的 ·数据库系统按照给定的磁盘页面(块)地址读取 磁盘页面,把数据放到内存的缓冲区(缓冲区 是在数据库系统初始化时候建立的)中。每读 入一个页面都在散列后备表中记录该页面在缓 冲区中位置,每一次读取页面时,首先在散列 后备表中查询该页面是否已在缓冲区中,如果 在缓冲区则忽略磁盘访问。 ·缓冲区采用最少使用算法(LRU)管理可用空间, 当缓冲区需要自由空间时,最少使用的页面将 被移出.最频繁使用的数据被保存在缓冲区中。 ·为了提高效率,扩大内存的同时,有必要对访问 进行组织(表的磁盘空间分配),以使所需信息 都在同一个页面上 北京邮电次学软优貌 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 2.1.1.1磁盘访问是面向页面(数据块)的 • 数据库系统按照给定的磁盘页面(块)地址读取 磁盘页面,把数据放到内存的缓冲区(缓冲区 是在数据库系统初始化时候建立的)中。每读 入一个页面都在散列后备表中记录该页面在缓 冲区中位置,每一次读取页面时,首先在散列 后备表中查询该页面是否已在缓冲区中,如果 在缓冲区则忽略磁盘访问。 • 缓冲区采用最少使用算法(LRU)管理可用空间, 当缓冲区需要自由空间时,最少使用的页面将 被移出.最频繁使用的数据被保存在缓冲区中。 • 为了提高效率,扩大内存的同时,有必要对访问 进行组织(表的磁盘空间分配),以使所需信息 都在同一个页面上
《数据厍设计与开发》讲义 2.1.1.20 RACLE的磁盘资源分配 ·不同商业数据库系统的磁盘空间分配体系结构不 大相同.以下说明 ORACLE中的磁盘资源分配 CREATE TABLESPACE tsname DATAFILE dfnamel[, dfname 2.1 [DEFAULT STORAGE storage [ ONLINE|OFFLⅠNE]; 联机脱机(立刻能不能用) ·表空间是 ORACLE数据库基本的分配介质,所有请 求磁盘空间的表、索引和其它对象都在表空间中 有对应的磁盘空间。表空间对应于一个或多个操 作系统文件,可跨越磁盘设备。 所有数据库产品都有类似于表空间的结构来隔离 用户和操作系统,它代表一块可以使用的磁盘空 间。DB2称为表空间, INFORMIX称为数据库空间。 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 2.1.1.2 ORACLE的磁盘资源分配 • 不同商业数据库系统的磁盘空间分配体系结构不 大相同.以下说明ORACLE中的磁盘资源分配。 • CREATE TABLESPACE tsname DATAFILE dfname1[,dfname2…] [DEFAULT STORAGE storage] [ONLINE|OFFLINE]; • 表空间是ORACLE数据库基本的分配介质,所有请 求磁盘空间的表、索引和其它对象都在表空间中 有对应的磁盘空间。表空间对应于一个或多个操 作系统文件,可跨越磁盘设备。 • 所有数据库产品都有类似于表空间的结构来隔离 用户和操作系统,它代表一块可以使用的磁盘空 间。DB2称为表空间,INFORMIX称为数据库空间。 联机|脱机(立刻能不能用)
《数据厍设计与开发》讲义 2.1.1.20 RACLE的磁盘资源分配 ORACLE数据库应包含多个表空间. SYSTEM表空间 是在 Create Database时自动创建的, SYSTEM表 空间包含数据字典,也可包含用户对象.但DBA应 创建几个表空间分别存储相应的对象 当 CREATE TABLE时可使用子句 TABLESPACE指定 表空间 ·创建表和索引时,其表空间分配是以数据段对象 和索引段对象标识的 创建数据段和索引段时,将从表空间中分配一个 初始的磁盘空间,称为初始区域(缺省10KB).当 写满该区域后,再分配一块区域,称为下一区域 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 2.1.1.2 ORACLE的磁盘资源分配 • ORACLE数据库应包含多个表空间.SYSTEM表空间 是在Create Database时自动创建的,SYSTEM表 空间包含数据字典,也可包含用户对象.但DBA应 创建几个表空间分别存储相应的对象. • 当CREATE TABLE时可使用子句TABLESPACE指定 表空间. • 创建表和索引时,其表空间分配是以数据段对象 和索引段对象标识的. • 创建数据段和索引段时,将从表空间中分配一个 初始的磁盘空间,称为初始区域(缺省10KB).当 写满该区域后,再分配一块区域,称为下一区域
《数据厍设计与开发》讲义 2.1.1.2 ORACLE的磁盘资源分配 数据库存储结构示意图 库 CAP数据库 表空间 tsname1 system 文件 drill dfile2 dfile3 表段 customers agents products orders ordindx DATA DATA DATADATA INDEX 区间 每一块区域都在一个文件上,一个段可以由来 自多个文件的区域组成.每一块区域大小都是 块大小的整数倍。 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 2.1.1.2 ORACLE的磁盘资源分配 • 每一块区域都在一个文件上,一个段可以由来 自多个文件的区域组成.每一块区域大小都是 块大小的整数倍。 CAP数据库 tsname1 system dfile1 dfile2 dfile3 customers agents products orders ordindx … DATA DATA DATA DATA INDEX … 数据库存储结构示意图 库 表空间 文件 表 段 区间
《数据厍设计与开发》讲义 2.1.1.20 RACLE的磁盘资源分配 表空间由一个或多个在 DATAFILE子句中指定的 操作系统文件组成. dataFile dfname [SIzE n [K M]] [REUSE LAUTOEXTEND OFF AUTOEXTEND ON [NEXT n [K M] [MAXSIZE UNLINITED n [K M]]] L, dfname.] 没有SIZE且数据文件存在, ORACLE使用该文件 有SIZE, ORACLE创建一新文件(以前有则覆盖) 有SIZE且有 REUSE, ORACLE重用旧文件 auTOEXTEND子句决定可否自动扩展文件大小; NEXT定每次申请区域大小, MAXSIZE定最大尺寸 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 2.1.1.2 ORACLE的磁盘资源分配 • 表空间由一个或多个在DATAFILE子句中指定的 操作系统文件组成. DATAFILE dfname [SIZE n [K|M]][REUSE] [AUTOEXTEND OFF| AUTOEXTEND ON [NEXT n [K|M] [MAXSIZE UNLINITED|n [K|M]]]] [,dfname …] 没有SIZE且数据文件存在,ORACLE使用该文件; 有SIZE,ORACLE创建一新文件(以前有则覆盖); 有SIZE且有REUSE,ORACLE重用旧文件. AUTOEXTEND子句决定可否自动扩展文件大小; NEXT定每次申请区域大小,MAXSIZE定最大尺寸