我们大家都知道数据库的相关数据最终都是存储在相关物理磁盘上,其实对数据访问通俗的讲就是对这些相关的物理磁盘进行读写,因此对于这些物理存储的优化是系统优化的一个重要部分。
对于Oracle物理存储结构优化,主要是合理地分配逻辑结构的物理存储地址,这样虽不能减少对物理存储的读写次数,但却可以使这些读写尽量并行,减少磁盘读写竞争,从而提高效率,也可以通过对物理存储进行精密的计算减少不必要的物理存储结构扩充,从而提高系统利用率。
1、磁盘读写并行优化
对于数据库的物理读写,Oracle系统本身会进行尽可能的并行优化,例如在一个最简单的表检索操作中,如果表结构和检索域上的索引不在一个物理结构上,那么在检索的过程中,对索引的检索和对表的检索就是并行进行的。
2、操作并行优化
操作并行的优化是基于操作语句的统计结果,首先是统计各个表的访问频率,表之间的连接频率,根据这些数据按如下原则分配表空间和物理磁盘,减少系统进程和用户进程的磁盘I/O竞争; 把需要连接的表格在表空间/物理磁盘上分开; 把高频访问的表格在表空间/物理磁盘上分开; 把经常需要进行检索的表格 的表结构和索引在表空间/物理磁盘上分开。
3、减少存储结构扩展
如果应用系统的数据库比较脆弱,并在不断地增长或缩小,这样的系统在非动态变化周期内效率合理,但是当在动态变化周期内的时候,性能却很差,这是由于Oracle的动态扩展造成的。
在动态扩张的过程中,Oracle必须根据存储的要求,在创建行、行变化获取缺省值时,扩展和分配新的存储空间,而 且表格的扩展往往并不是事情的终结,还可能导致数据文件、表空间的增长,这些扩展会导致在线系统反应缓慢。对于这样的系统,最好的办法就是在建立的时候预先分配足够的大小和合适的增长幅度(很可惜的是,这些只有在一段时间的实际运行后,才能从统计分析中得到较为合理的数值)。
在一个对象建立的时候要根据应用充分地计算他们的大小,然后再根据这些数据来定义对象Initial、Next和 Minextents的值,使数据库在物理存储上和动态增长次数上达到一个比较好的平衡点,使这些对象既不经常发生增长,也不过多地占用数据库。
以上的相关内容就是对Oracle物理结构的优化的介绍,望你能有所收获。
【编辑推荐】