File system or raw partition?

When deciding whether to use file systems or raw partition devices, there are a number of factors you should consider, such as operating system file system implementation, application I/O profiles, available operating system resources such as memory and CPU, operating system tuning for file system cache limits, and swapping preferences.

For earlier releases of Adaptive Server, file system devices were good for large read operations where the file system read-ahead outpaced Adaptive Server asynchronous prefetch capabilities, however, raw partitions performed better for write activity, particularly in high concurrency environments.

Adaptive Server 12.0 included the device dsync parameter, which implemented dsync I/O for file system devices, enabling updates to the device to take place directly on the storage media, or buffering them with the UNIX file system. Although it may have appeared that dsync bypassed the file system buffer to ensure recoverability, it still used the file system buffer, but forced a flush after each file system write. This double buffering in both Adaptive Server and the file system cache—plus the flush request—caused slower response times for writes to file system devices than for raw partitions.

Adaptive Server 15.0, includes the directio parameter for disk init, disk reinit, and sp_deviceattr, which implements direct I/O, improving the slower write times by allowing you to configure Adaptive Server to transfer data directly to disk, bypassing the operating system buffer cache. These platforms support the directio parameter:

Considerations before using directio

Consider the following before you use directio: