第1章 优化表性能

本章着眼于影响表中数据存取性能的数据库特性。表的性能部分取决于在创建表之前所应用的数据库特性。例如,在最初创建数据库时所采用的物理存储特性以及相关的表空间都会在后来影响表的性能。类似地,表性能还受到最开始选择的物理特性的影响,例如表类型和数据类型。因此应用实践中使用的数据库、表空间和表的创建标准(并将性能问题放在心上),就形成了优化数据可用性和可扩展性的基础。

组成Oracle数据库的物理结构用来存储、管理、保护以及读取数据。在创建数据库的时候,可以选择应用一些与性能相关的特性。例如,数据文件的初始布局以及表空间的管理类型,都是在创建数据库时指定的。这时所实现的架构上的决策,通常都会产生很长远的影响。

提示 Oracle实例的定义是其内存结构及其后台进程。而Oracle数据库则由物理文件——也就是数据文件、控制文件以及在线重做日志文件组成。

如图1-1所描述的那样,表空间是支持管理一组数据文件的逻辑结构。数据文件就是磁盘上的物理文件。配置表空间时,要注意一些对性能会产生深远影响的特性,也就是本地管理表空间以及自动段存储管理表空间。如果合理地设置了这些特性,将来也就能最大限度地获得可接受的表性能。

enter image description here

表是数据库中存储数据的对象。数据库性能衡量的是应用能够以什么样的速度插入、更新、删除和查询数据。因此,本书就从优化表性能的攻略讲起。

本章首先介绍创建数据库和表空间时,可能会影响表性能的各方面因素。然后,讨论另外一些主题,比如根据与性能相关的业务需求,选择表类型和数据类型。稍后介绍的主题包括管理表空间使用情况的物理实现方式。本章还会详细介绍其他问题,例如探测表碎片、处理位于高水位线下方的空闲空间、行链接以及数据压缩。除此以外还会描述Oracle段顾问(Oracle Segment Advisor)。这个工具很好用,能够帮助你自动探测并解决表碎片和未使用的空间问题。

目录