Recoverability

An important part of BDB XML's transactional guarantees is durability. Durability means that once a transaction has been committed, the container modifications performed under its protection will not be lost due to system failure.

In order to provide the transactional durability guarantee, BDB XML uses a write-ahead logging system. Every operation performed on your containers is described in a log before it is performed on your containers. This is done in order to ensure that an operation can be recovered in the event of an untimely application or system failure.

Beyond logging, another important aspect of durability is recoverability. That is, backup and restore. BDB XML supports a normal recovery that runs against a subset of your log files. This is a routine procedure used whenever your environment is first opened upon application startup, and it is intended to ensure that your container is in a consistent state. BDB XML also supports archival backup and recovery in the case of catastrophic failure, such as the loss of a physical disk drive.

This book describes several different backup procedures you can use to protect your on-disk data. These procedures range from simple offline backup strategies to hot failovers. Hot failovers provide not only a backup mechanism, but also a way to recover from a fatal hardware failure.

This book also describes the recovery procedures you should use for each of the backup strategies that you might employ.

For a detailed description of backup and restore procedures, see Managing BDB XML Files.