Availability Guide for Application Design
Data Protection and Recovery
Availability Guide for Application Design—525637-004
4-19
Queue Files
Tolerance, and by remote duplicate databases as described under Duplicate
Databases on page 4-12.
To reduce the need for planned outages, the NonStop SQL/MP product has been
specifically designed to protect your data while allowing significant reconfiguration and
other operations to be done without bringing the application down. Your data remains
secure while you perform the following operations with no downtime or minimal
downtime:
•
Create a new table
•
Add a column to an existing table
•
Add an index
•
Move or split a partition
•
Perform backups
•
Recover a page, partition, or file
•
Purge a partition
•
Add logs, disks, or processes
Some of these operations would require days of downtime for a large database on
other vendor’s equipment. On the HP system, you can reorganize a B-tree while the
application is accessing it. Your application is typically locked out of your database for
one minute or less while adding an index or splitting or moving a partition.
For a discussion of system management issues and the utilities involved in performing
these kinds of online change, refer to the NonStop SQL/MP Installation and
Management Guide. For information on how to use the NonStop SQL/MP features to
write an application that can accept such physical changes in its database with minimal
application downtime, refer to Section 10, Designing Applications for Change.
Queue Files
Queue files provide a convenient and efficient place for queueing and dequeueing data
records. Records can be queued in this way by multiple processes. TMF protects
queued records from component or system failure.
Typical use of queue files is to provide a repository for requests and replies between
requester and server processes. In this way, requesters and servers function
asynchronously. Requesters enqueue requests on the queue file and can immediately
get on with other work. Similarly, servers can open the queue file and look for work to
do when they are ready to do so.
This subsection briefly introduces the generic use of queue files, discusses the benefits
of using transactions to protect your message queues, and provides some examples of
how queue files can be used to enhance the availability of an application. Two such
techniques—transaction playback and trickle catchup—are described. Both techniques
keep the application running even if the server system goes offline. Both techniques
queue requests for the server when it comes online again:
•
The term transaction playback describes a technique that works only if the order in
which requests are executed is unimportant.