《数据厍设计与开发》讲义 4.4.2 ORACLE空间设计 · ORACLE数据库的结构包括逻辑结构和物理结构。 在进行应用系统数据库设计时,空间设计是非 常重要的,它与今后运行系统的性能、可用、 维护、管理等有密切的关系。物理结构与逻辑 结构之间的关系如下图: Database Tablespace Data file Logical ySical Segment Extent Oracle block os block 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 4.4.2 ORACLE空间设计 • ORACLE数据库的结构包括逻辑结构和物理结构。 在进行应用系统数据库设计时,空间设计是非 常重要的,它与今后运行系统的性能、可用、 维护、管理等有密切的关系。物理结构与逻辑 结构之间的关系如下图: Tablespace Segment Extent Oracle block Data file OS block Database Logical Physical
《数据厍设计与开发》讲义 4.4.2.10 RacLe表空间设计 ORACLE表空间分为两大类:系统表空间和非系 统表空间。系统表空间是建库时自动创建的主 要用于存储数据字典、系统回滚段;非系统表 空间是由用户创建的表空间,主要用于分离段, 方便用户的数据管理。 ORACLE推荐一种最佳灵 活结构OFA( Optimal flexible architecture) 可以用于表空间的设计。OFA是 ORACLE软件安装 和数据文件的推荐目录结构。OFA只是一组建议 并不是绝对原则。下面介绍基本OFA和扩展OFA 基本OFA 1)系统表空间( SYSTEM):系统表空间不具有重建 性,只用于存放数据字典,其他内容如数据段信息 等都应从系统表空间中移出 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 4.4.2.1 ORACLE表空间设计 • ORACLE表空间分为两大类:系统表空间和非系 统表空间。系统表空间是建库时自动创建的主 要用于存储数据字典、系统回滚段;非系统表 空间是由用户创建的表空间,主要用于分离段, 方便用户的数据管理。ORACLE推荐一种最佳灵 活结构OFA(Optimal Flexible Architecture) 可以用于表空间的设计。OFA是ORACLE软件安装 和数据文件的推荐目录结构。OFA只是一组建议, 并不是绝对原则。下面介绍基本OFA和扩展OFA。 –基本OFA 1)系统表空间(SYSTEM):系统表空间不具有重建 性,只用于存放数据字典,其他内容如数据段信息 等都应从系统表空间中移出
《数据厍设计与开发》讲义 4.4.2.10 RacLe表空间设计 基本OFA 2)分离应用程序数据段(DATA):应用程序数据段 应是一个独立的表空间,即数据表空间。建立单独 数据表空间的理由是:应用程序与数据文件分离有 利于减少资源争用,简化文件管理;另外,当数据 段产生碎片时利于管理。 3)分离应用程序索引段( INDEX):索引段不应与 相关的数据段存储在一个表空间,以免产生资源争 用。由于表增长和不正确的尺寸设置可能产生索引 段的碎片,分离应用程序索引段,可以减少整理数 据表或索引碎片所需的管理代价。从数据表分离相 应的索引也可以通过 ALTER INDEX命令来实现。 4)分离工具段( TOOLS):许多第三方工具会将数 据存储在系统表空间中,为了避免这种情况,可将 它们的对象移出系统表空间 家邮电大学物你学院 部明20030
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 4.4.2.1 ORACLE表空间设计 –基本OFA 2)分离应用程序数据段(DATA):应用程序数据段 应是一个独立的表空间,即数据表空间。建立单独 数据表空间的理由是:应用程序与数据文件分离有 利于减少资源争用,简化文件管理;另外,当数据 段产生碎片时利于管理。 3)分离应用程序索引段(INDEX):索引段不应与 相关的数据段存储在一个表空间,以免产生资源争 用。由于表增长和不正确的尺寸设置可能产生索引 段的碎片,分离应用程序索引段,可以减少整理数 据表或索引碎片所需的管理代价。从数据表分离相 应的索引也可以通过ALTER INDEX命令来实现。 4)分离工具段(TOOLS):许多第三方工具会将数 据存储在系统表空间中,为了避免这种情况,可将 它们的对象移出系统表空间
《数据厍设计与开发》讲义 4.4.2.10 RacLe表空间设计 基本OFA 5)分离回滚段(RBS):回滚段会针对巨型事务动态 扩展尺寸,也会动态收缩到指定的优化尺寸(参见 4.3)。回滚段的Ⅰ/0通常与数据和索引表空间的I/0同 步。将回滚段分离出来是出于减少I/0冲突的考虑。 6)分离临时段(TEMP):临时段是数据库中动态生成 的对象,用来存储巨型排序操作(如 SELECT DISTINCT, UNI0N, CREATE INDEX等)的数据。由于动态特性,临 时段不应与其他类型段一起存储。通常,在建立用户 时,将这些用户使用的临时数据段设置到临时表空间 7)分离用户(USER):为用户帐号建立一个USER表空 间,在建立用户时将用户的操作数据放在用户表空间。 以上7个表空间是最基本的表空间,也是传统OFA的 基本组成部分。随着应用的深入,又有扩展的OFA 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 4.4.2.1 ORACLE表空间设计 –基本OFA 5)分离回滚段(RBS):回滚段会针对巨型事务动态 扩展尺寸,也会动态收缩到指定的优化尺寸(参见 4.3)。回滚段的I/O通常与数据和索引表空间的I/O同 步。将回滚段分离出来是出于减少I/O冲突的考虑。 6)分离临时段(TEMP):临时段是数据库中动态生成 的对象,用来存储巨型排序操作(如SELECT DISTINCT, UNION,CREATE INDEX等)的数据。由于动态特性,临 时段不应与其他类型段一起存储。通常,在建立用户 时,将这些用户使用的临时数据段设置到临时表空间。 7)分离用户(USER):为用户帐号建立一个USER表空 间,在建立用户时将用户的操作数据放在用户表空间。 以上7个表空间是最基本的表空间,也是传统OFA的 基本组成部分。随着应用的深入,又有扩展的OFA
《数据厍设计与开发》讲义 4.4.2.10 RacLe表空间设计 扩展的OFA 1)分离低使用数据段(DATA2):在基表中,有 些是动态数据,一些是静态数据,而动态数据和静 态数据常常被并发操作。静态数据在实际使用时只 是被提取信息,可以把这些静态数据表设置到一个 专用表空间(DATA2),从而避免并发操作冲突。 2)分离低使用索引段(INEX2):数据表分为静 态表和动态表,则索引亦如此。对于静态表的索引 表应建立静态索引表空间( INDEX2)。如果索引已 经生成,可以使用 ALTER INDEX语句来移动这些索引 到一个新的表空间中 3)分离工具索引( TOOLS_1):如果数据库对 TOOLS 表空间有较多的操作,则这些工具表索引可以移到 另一个表空间(TOLS1),这样T0OLS表空间就可 看成工具数据表空间 家邮电大学物你学院 部明80080
北京邮电大学软件学院 郭文明 2003.06 《数据库设计与开发》讲义 4.4.2.1 ORACLE表空间设计 –扩展的OFA 1)分离低使用数据段(DATA_2):在基表中,有一 些是动态数据,一些是静态数据,而动态数据和静 态数据常常被并发操作。静态数据在实际使用时只 是被提取信息,可以把这些静态数据表设置到一个 专用表空间(DATA_2),从而避免并发操作冲突。 2)分离低使用索引段(INDEX_2):数据表分为静 态表和动态表,则索引亦如此。对于静态表的索引 表应建立静态索引表空间(INDEX_2)。如果索引已 经生成,可以使用ALTER INDEX语句来移动这些索引 到一个新的表空间中。 3)分离工具索引(TOOLS_1):如果数据库对TOOLS 表空间有较多的操作,则这些工具表索引可以移到 另一个表空间(TOOLS_1),这样TOOLS表空间就可 看成工具数据表空间