Saturday, August 18, 2012

I/O options for Oracle on IBM Aix

Oracle on AIX offers thee main I/O options, and the DBA needs to pick the one that's right for their database:
  • JFS - Journaled File System
  • CIO - Concurrent I/O (uses JFS)
  • DIO - The Direct I/O option   
AIX has the Concurrent IO (CIO) method within their JFS filesystem, allowing the use of JFS while achieving fast I/O (almost as fast as raw devices).  Raw partitions in AIX are quite cumbersome and CIO is a great alternative since you get the ease of administration and the speed of “almost raw”. 

However, high-DML database may want to use direct I/O (DIO instead of JFS or CIO.  See these notes on using Oracle AIX with direct I/O which is implemented with the AIX "dio" option and the init.ora parameter  

Oracle init.ora:      filesystemio_options = SETALL
JFS2 mount option:    mount –o dio /oradata/ts1.dbf

IBM says that direct I/O (DIO) tends to benefit heavily random access workloads while CIO tends to benefit heavily update workloads.

When CIO is used, the POSIX standard filesystem level I/O serialization mechanisms are disabled, which avoids inode contention issues.

If planning to use JFS2 CIO, be sure to isolate online redo logs and control files in a separate file system that was created with agblksize=512.

File systems which contain Oracle data (.dbf) files should be created with agblksize=4096 if db_block_size >= 4K or agblksize=2048 if db_block_size=2K.

On CIO-mounted filesystems that contain datafiles, the database block size needs to be multiple of agblksize.

Not all workloads benefit from the use of CIO (i.e. they get more benefit from filesystem caching). In some cases, it may be desirable to create multiple filesystems and allocate files based on their anticipated workload characteristics

Therefore, individual filesystems could be mounted in CIO mode, or default caching mode, depending on the I/O characteristics of the files within the particular filesystem


No comments:

Post a Comment