Tuning the writeback caching

When writeback caching is enabled, any data that is read from the disk is cached, unless the file is explicitly marked for "no caching" or if the cache is full. For writes, certain writes cause the data to be cached. You can load a file to speed up the application. Pinning a file in the cache ensures that the data does not get evicted. If some data is already cached, and that portion of the disk is overwritten, then SmartIO also writes the new data to the cache device to ensure that the cached data remains up to date.

If you are using a database template, SmartIO caches according to the template rules.

See About SmartIO caching for Oracle databases on VxFS file systems .

You can use the following tunable parameters to adjust the size of the cache and how long data is held in the cache.

Setting the maximum space used for dirty data per node

Setting the maximum retention time used for dirty data

Setting the maximum space used for dirty data per node

When writeback is enabled, you can configure a maximum for the space used for dirty data per node. By default, there is no maximum. If you configure a maximum, you must allow at least 512 MB for each file system or cluster file system. For a cluster file system, the space required for data reflection is not included in the maximum.

Run the following command to configure the maximum. For a cluster file system, run the command on each node of the cluster to make the setting cluster wide.

# sfcache set writeback_size=size

Use the following command to view the current value:

# sfcache stat cachearea_name

See Viewing the SmartIO cache statistics .

Setting the maximum retention time used for dirty data

Dirty data is data in the cache that has not been flushed to the disk and so is out of sync with the data disk. The retention time determines how long the dirty data might remain unflushed. The default is 10 seconds.

For a cluster file system, run the command on each node of the cluster to make the setting cluster wide.

# sfcache set writeback_interval=interval

Use the following command to view the current value:

# sfcache stat cachearea_name

See Viewing the SmartIO cache statistics .