Cache Dbspace for Direct-Attached Storage

Add direct-attached storage devices, such as solid-state disks (SSDs), to a multiplex node or a simplex server by configuring a cache dbspace local to each node. Local direct-attached storage provides an SSD buffer pool extension to your database, which can improve I/O performance in general, and shared SAN device performance in particular. Although multiplex configurations gain the most benefit from direct-attached storage, simplex servers can benefit too.

The cache dbspace is an independent dbspace, like the IQ main store (IQ_SYSTEM_MAIN), IQ temporary store (IQ_SYSTEM_TEMP), and RLV (IQ RLV STOREs) dbspaces. Like all dbspaces, the cache dbspace can contain a single file or device, or multiple files or devices. You can configure a maximum of one cache dbspace per simplex and multiplex node.

Note: Do not confuse the cache dbspace with the IQ main store main buffer cache. You set main buffer cache size using the database startup utility start_iq option -iqmc (main buffer cache size). See the Utility Guide.

After you create and configure the cache dbspace, the server caches copies of locally used read-only pages—both affinitized (preferred) and nonaffinitized pages—in the cache dbspace. In subsequent reads from the IQ main store dbspace files, the server first checks the cache dbspace to see if the page exists. If it does exist, the server reads the page from the high-speed SSD cache dbspace, rather than the shared SAN IQ main store dbspace, thereby improving performance.


Cache dbspace

You see maximum performance benefits if the cache dbspace is large enough to contain the node's entire working set of pages. If the cache dbspace is smaller than the working set of pages, the performance benefit is more modest.

The cache dbspace works with the data affinity feature to increase performance. Data affinity accesses cached data to boost query performance in multiplex servers. Affinity is automatically enabled for multiplex databases. Affinity tries to store the pages of partitions assigned to a node in the main buffer cache memory for that node. However, if an application's working set of pages exceeds the main buffer cache memory for the node, add direct-attached storage as a secondary fast access layer.