A method and system for reducing overhead associated with recovering after
a failure. According to the method, a checkpoint value is maintained that
indicates which records of a plurality of records have to be processed
after the failure. The plurality of records contain change information
that corresponds to a plurality of data blocks. A target checkpoint value
is determined based on a desired number of data block reads that will be
required during a redo phase of recovery. Changes contained in volatile
memory are then written to nonvolatile memory to advance the checkpoint
value to at least the target checkpoint value. According to another aspect
of the invention, the target checkpoint value is determined using a
circular queue of offset buckets. The offset buckets are used to store
index values that are associated with buffers in the ordered list. The
target checkpoint value is periodically set equal to an index value that
is contained in an offset bucket. According to another aspect of the
invention, the target checkpoint value is determined by calculating a
maximum number of records that should be processed after the failure. The
maximum number of records is based on the desired number of data block
reads that will be required during the redo phase of the recovery. The
target checkpoint value is updated based on the maximum number of records.
Un metodo e un sistema per la riduzione lassù connessa con recuperare dopo un guasto. Secondo il metodo, un valore del punto di controllo è effettuato che indica quali annotazioni di una pluralità di annotazioni devono essere procedute dopo il guasto. La pluralità di annotazioni contiene le informazioni del cambiamento che corrispondono ad una pluralità di blocchetti di dati. Un valore del punto di controllo dell'obiettivo è determinato ha basato su un numero voluto di blocchetto di dati legge che sarà richiesto durante la fase di rif del recupero. I cambiamenti contenuti nella memoria volatile allora sono scritti alla memoria non volatile per avanzare il valore del punto di controllo almeno al valore del punto di controllo dell'obiettivo. Secondo un'altra funzione dell'invenzione, il valore del punto di controllo dell'obiettivo è determinato usando una coda circolare delle benne di derivazione. Le benne di derivazione sono utilizzate per memorizzare i valori di indice che sono associati con gli amplificatori nella lista richiesta. Il valore del punto di controllo dell'obiettivo è periodicamente uguale regolato ad un valore di indice che è contenuto in una benna di derivazione. Secondo un'altra funzione dell'invenzione, il valore del punto di controllo dell'obiettivo è determinato calcolando un numero massimo delle annotazioni che dovrebbero essere procedute dopo il guasto. Il numero massimo delle annotazioni è basato sul numero voluto di blocchetto di dati legge che sarà richiesto durante la fase di rif del recupero. Il valore del punto di controllo dell'obiettivo è aggiornato basato sul numero massimo delle annotazioni.