Because you do not need to extend name spaces and present the files as devices, you can enable Concurrent I/O on regular files.
For DB2, you can enable an entire file system to use Concurrent I/O or you can enable specific SMS containers to use Concurrent I/O. If you enable a specific SMS container, the rest of the file system will use the regular buffer I/O.
Before enabling Concurrent I/O, review the following:
For DB2, /mount_point is the directory in which you can put data containers of the SMS tablespaces using the Concurrent I/O feature.
Note: |
This applies to both creating a new tablespace to use Concurrent I/O or enabling an existing tablespace to use Concurrent I/O. |
For example for DB2 to mount a file system named /datavol on a mount point named /db2data:
# /usr/sbin/mount -V vxfs -o cio /dev/vx/dsk/db2dg/datavol \ /db2data
# /usr/sbin/mount -t vxfs -o cio /dev/vx/dsk/db2dg/datavol \ /db2data
The following is an example of mounting a directory (where the new SMS containers are located) to use Concurrent I/O.
To mount an SMS container named /container1
on a mount point named /mysms
:
# /usr/sbin/mount -Vt namefs -o cio /datavol/mysms/container1 /mysms
To enable Concurrent I/O on an existing SMS container using the namefs -o cio option
# mv /mydb/mysmsdir /mydb/mysmsdir2
# mount -Vt namefs -o cio /mydb/mysmsdir2 /mydb/mysmsdir
# db2stop # mv /mydb/mysmsdir /mydb/mysmsdir2 # mount -Vt namefs -o cio /mydb/mysmsdir2 /mydb/mysmsdir # db2start
This example shows how to mount a directory for an existing SMS container to use Concurrent I/O.
To enable Concurrent I/O on a DB2 tablespace when creating the tablespace
To verify that Concurrent I/O has been set for a particular DB2 tablespace
# db2 -v "get snapshot for tablespaces on dbname"
where dbname is the database name.