Method and apparatus for detecting and recovering from data corruption of database via read logging

a database and read logging technology, applied in the field of database management systems, can solve problems such as unacceptable solutions, programming errors can affect persistent data, application code is typically less trustworthy, and application code is less trustworthy

Inactive Publication Date: 2002-07-11
LUCENT TECH INC
View PDF0 Cites 77 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

In all these systems, direct access to data (either in the database buffer cache or in a memory-mapped portion of the database) by application programs is critical to providing fast response times. The alternative to memory mapping is to access data via a server process, but this presents an unacceptable solution due to the high cost of inter-process communication.
Application code is typically less trustworthy than database system code, and there is therefore a significant risk that "wild writes" and other programming errors can affect persistent data in systems that allow applications to access such data directly.
Since the systems described above are increasingly popular, the risk of wild writes and associated physical corruption is growing.
Additionally, there is a risk of damage due to software faults in the DBMS itself.
Data is "directly" corrupted in a physical corruption sense by "unintended" updates, such as wild writes as explained above due to programming errors in the physical case, or arising from incorrectly coded updates or input errors (human errors) in the logical case.
Data written in this manner is indirectly corrupted, and the process involved is said to have carried the corruption.
While this process may be a database maintenance process, we focus on transaction-carried corruption, a problem in which the carrying process is executing transactions.
However, this can be very expensive, for example, on standard UNIX systems.
However, type-safe languages have yet to be proven in high-performance situations, and sandboxing may perform poorly on certain architectures.
Finally, communication across process domain boundaries to a database server process provides protection, but such communication is orders of magnitude slower than access in the same process space, even with highly tuned implementations.
Finally, some work has raised concern over damage to data due to faults in the DBMS itself
We consider such cases inherently impossible to prevent, and instead assume that the problem is detected later, usually when a database user notices incorrect output (on a bank statement, for example).

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Method and apparatus for detecting and recovering from data corruption of database via read logging
  • Method and apparatus for detecting and recovering from data corruption of database via read logging
  • Method and apparatus for detecting and recovering from data corruption of database via read logging

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0026] Introduction

[0027] Referring briefly to FIG. 1, there is shown an overall architecture of the Dali storage manager on which the present invention has been implemented. The Dali system should be considered only an exemplary implementation of the present invention and the present detection and recovery algorithms may be applied in other architectures as well. The database in a Dali system consists of one or more database files, along with a special system database file. User data itself is stored in database files while all data related to database support, such as log and lock data, is stored in the system database file. This enables storage allocation routines to be uniformly used for persistent user data as well as non-persistent system data like locks and logs. The Dali system database file also persistently stores information about the database files in the system.

[0028] As shown, database files opened by a process are directly mapped into the address space of that process...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

A method of detecting and recovering from data corruption of a database is characterized by the step of logging information about reads of a database in memory to detect errors in data of the database, wherein said errors in data of said database arise from one of bad writes of data to the database, of erroneous input of data to the database by users and of logical errors in code of a transaction. The read logging method may be implemented in a plurality of database recovery models including a cache-recovery model, a prior state model a redo-transaction model and a delete transaction model. In the delete transaction model, it is assumed that logical information is not available to allow a redo of transactions after a possible error and the effects of transactions that read corrupted data are deleted from history and any data written by a transaction reading Ararat data is treated as corrupted.

Description

[0001] This application claims priority and is related by subject matter to U.S. application Ser. No. 08 / 766,096, entitled "System and Method for Restoring a Distributed Checkpointed Database," of Bohannon et al., to U.S. application Ser. No. 08 / 767,048, entitled "System and Method for restoring a Multiple Checkpointed Database in View of Loss of Volatile Memory" of Bohannon et al., both applications being filed Dec. 16, 1996 and to U.S. Provisional Patent Application Serial No.'s 60 / 099,265 and 60 / 099,271, filed Sep. 4, 1998 of Bohannon et al.[0002] 1. Technical Field[0003] The present invention relates to the field of database management systems generally and, more particularly, to method and apparatus for detecting and recovering from data corruption of a database by codewording regions of the database and by logging information about reads of the database.[0004] 2. Description of the Related Arts[0005] A database is a collection of data organized usefully and fundamental to many...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
Patent Type & Authority Applications(United States)
IPC IPC(8): G06F11/14G06F12/00
CPCG06F11/1471Y10S707/99932Y10S707/99953G06F11/1474G06F2201/80
Inventor BOHANNON, PHILIP L.RASTOGI, RAJEEVSESHADRI, SRINIVASANSILBERSCHATZ, ABRAHAMSUDARSHAN, SUNDARARAJARAO
Owner LUCENT TECH INC
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products