About backing up and restoring Quick I/O files using Legato NetWorker

When Quick I/O files are created using the command qiomkfile, a hidden file with storage space allocated to it and a link are created. The link points to the Quick I/O interface of the hidden file. Using qiomkfile ensures that the space for the file is allocated in a contiguous manner, which typically improves performance.

Legato NetWorker does not follow symbolic links during backups because doing so would result in the data getting backed up twice: once using the symbolic link and once as the file itself. As a result, Quick I/O files must be backed up as two separate files and restored accordingly.

Because Legato NetWorker deletes and recreates files before they are restored, the restored files lose their contiguous allocation and could be restored as fragmented files with indirect extents. While this does not impact the integrity of the data being restored, it can degrade performance. Creating the file using qiomkfile before doing the backup does not resolve this problem because NetWorker deletes and recreates the file.

To avoid this potential performance degradation, Quick I/O files must be backed up and restored using the same methods used to back up and restore raw devices. This method involves using the NetWorker rawasm command to back up or save directories containing Quick I/O files. Because of the way the rawasm command works, NetWorker follows the Quick I/O symbolic link to back up the actual data in the hidden file. Skip the hidden file to avoid backing up the data twice. During restore, NetWorker looks at the attributes of the saved file and restores it using rawasm, bypassing the file deletion and recreation steps.

For example, to view all files in the db01 directory:

	$ ls -al /db01
	total 2192
	drwxr-xr-x				2 root			root		96			Oct 20 17:39 .
	drwxr-xr-x				9 root			root		8192			Oct 20 17:39 ..
	-rw-r--r--				 db2inst1			db2iadm1		1048576			Oct 20 17:39 	.dbfile
	lrwxrwxrwx				1 db2inst1			db2iadm1			22		Oct 20 17:39 dbfile   	->\
	.dbfile::cdev:vxfs:

The command for backing up the /db01 directory using rawasm would look like:

	<< /db01 >>	
	rawasm: dbfile
	skip: .dbfile	

To restore the file, preallocate the Quick I/O file using the qiomkfile command and enter:

 $ cd /db01
	$ recover -a /db01/dbfile