loading table of contents...

3.3.2.1. Optimization Options

In order to optimize your ORACLE database, you should consider the following hints:

  • Use an I/O subsystem with write caches.

  • Five hard disks are recommended for database operation: one each for redo logs, rollback, index, data, and archive logs.

  • Striping increases performance further. Hard disks could be mirrored in pairs, and striping could be defined across the mirror pairs.

  • RAID 5 should be avoided for performance reasons.

  • Larger redo logs might be necessary (for example 500MB). The aim is to rotate the logs less than once every three minutes. Larger redo logs increase recovery time.

  • Large redo log buffers (such as 10 MB) are recommended.

  • The tables Blobdata and PK_Blobdata should have larger than default values of init_trans, for example, 10 or 20 (depending on the number of concurrently active database connections, which in turn is defined in the sql.properties file of the Content Management Server).  The parameter init_trans determines how many processes can write to a single block in parallel. Large "waits for data block" in the statspack report indicate an init_trans problem. Increasing init_trans by 1 requires about 25 additional bytes per block for management information.

  • To check if init_trans is too small, this command shows the waiting database jobs: select sid, sql_text from v$session s, v$sqltext t where s.sql_hash_value=t.hash_value and s.sid in (select sid from v$session_wait where event = 'enqueue') order by sid,piece;

  • Be sure to update the database optimizer statistics on a regular basis