Real-Time Database Recovery
Modern databases systems often require that transactions are completed within a
specified time or else they must be aborted. In such real-time information systems, the
database cannot afford the time to stop the database,
restore from the backup files and re-execute all committed transactions from the log.
ObjectDatabase++ has been designed for the requirments of such a modern
real-time database.
ObjectDatabase++ allows for one process to be independently aborted, without the need to interrupt any
currently executing transaction. Our unique transaction
log file allows repair of the database without any undue interference to
the currently processing transaction. This compares with the usual transaction
control system with a trace log file, where all currently executing
transactions need to cease at the same time, creating an all or nothing effect
while recovery from the backup files proceed.
You can add real-time database features to your server application by following
the top-level design as pictured in the diagram below. It shows how your
database server that is made of several processes, can recover from a number of very serious problems originating
from any sub-system within your application.
ObjectDatabase++ has been written as one integrated system with its transaction control system
an integral part of the entire design – not the usual onion layering design.
Meaning that ObjectDatabase++ can flush through all
changes at the time of the commit transaction call and doing so without been
slower than other DBMS and in some cases, especially when dealing with a
high add/edit/delete object count - faster. This prevents any corruption of
table files and the automatic recovery of all information as of the time that
processing ceased (assuming no disk failure).
|