数据库规划与性能优化:OLTP、DSS 及混合系统全解析
1. OLTP 系统技术考量
在线事务处理(OLTP)系统是常见的数据库应用类型,在规划和优化时需要考虑以下几个关键方面:
- 回滚段管理 :应设置多个小的回滚段,标准是每四个活跃事务对应一个回滚段。每个事务可能会占用一个或多个扩展区,而回滚段头的分配可能会成为瓶颈。若多个事务争夺回滚段头,系统性能将受影响。
- 重做日志缓冲区大小 :合理设置重做日志缓冲区大小,避免频繁的重做日志切换,因为这会对性能造成冲击。初始时,可将重做日志文件大小设置为约 100M。
- 共享池大小 :确保有较大的共享池。对于经常执行的 SQL 语句,使用绑定变量可以将其缓存到内存中,从而提高性能。例如,对于不同客户执行相同的 SQL 语句,使用绑定变量可避免重复解析。
- 索引与数据分离 :将索引和数据存放在不同的表空间,并置于不同的磁盘和控制器上。这样可以减少磁盘 I/O 竞争,提高查询性能。
- 临时段使用 :使用小的临时段,尽量让排序操作在内存中完成。如果 SQL 语句包含大量连接操作,可能会导致临时段写入磁盘。此时,可以调整 SQL 语句以减少连接操作,或增大 SORT_AREA_SIZE
参数。
- 多线程服务器(MTS)使用 :当用户数量较多时,可以考虑使用 MTS 来减少内存需求,但要注意这可能会带来一定的性能损失。