Controlling file system buffering

On Sun Solaris UFS, Linux, Linux IBM, AIX, and Windows file systems only, you can control whether file system buffering is turned on or off. Turning off file system buffering saves a data copy from the file system buffer cache to the main IQ buffer cache. Usually, doing so reduces paging, and therefore improves performance. Be aware of one exception: If the IQ page size for the database is less than the block size of the file system (typically only in testing situations), turning off file system buffering may decrease performance, especially during multiuser operation.

File system buffering is turned off by default for newly created Sybase IQ databases.

To disable file system buffering for IQ Main dbspaces of existing databases, issue the following statement:

SET OPTION "PUBLIC".OS_FILE_CACHE_BUFFERING = OFF

To disable file system buffering for IQ Temporary dbspaces of existing databases, issue the following statement:

SET OPTION "PUBLIC".OS_FILE_CACHE_BUFFERING_TEMPDB = OFF

Experiment with this option to determine the best setting for different conditions. You can only set this option for the PUBLIC group. You must shut down the database and restart it for the change to take effect.

This direct I/O performance option is available on Sun Solaris UFS, Linux, Linux IBM, AIX, and Windows file systems only. This option has no effect on HP-UX and HP-UXi and does not affect databases on raw disk. In Linux, direct I/O is supported in kernel versions 2.6.x.

To enable direct I/O on Linux kernel version 2.6 and AIX, also set the environment variable IQ_USE_DIRECTIO to 1. Direct I/O is disabled by default in Linux kernel version 2.6 and AIX. IQ_USE_DIRECTIO has no effect on Sun Solaris and Windows.

Notes

See also “OS_FILE_CACHE_BUFFERING option” in Chapter 2, “Database Options” of Reference: Statements and Options.