Processing multiple database transactions in the same...

Data processing: database and file management or data structures – Database design – Data structure types

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C707S793000, C707S793000, C707S793000, C707S793000

Reexamination Certificate

active

06314417

ABSTRACT:

TECHNICAL FIELD
The invention relates generally to the fields of database transaction processing and caching the results of retrieval requests.
BACKGROUND OF THE INVENTION
It is common to use databases to store significant quantities of data, especially in cases in which the data is shared by a number of database-accessing programs. Database-accessing programs that access data in a database may be executed on a number of different connected computer system. These programs issue a series of database transactions, each corresponding to one or more operations on the database, including read and write operations.
When two or more such programs are executed on the same computer system, they are typically each executed in a separate process. Each process corresponds to a set of resources provided by the operating system, most notably an addressable a range of memory, that is available only to programs (“threads”) running within the process. Database-accessing programs are generally each executed in a separate process to prevent them from corrupting each other's data. Because database-accessing programs executing in separate processes cannot share data, the results of a read operation obtained by one database-accessing program are unavailable to other database-accessing programs that issue the same read operations. Indeed, because each database-accessing program typically discards the results of read operation performed as part of a transaction when the transaction completes, a single database-accessing program may have to issue the same read operation two or more times in a short period of time. These redundant transactions again must be applied directly against the database, which has significant time cost. First, the database-accessing program must transmit the transaction across a network to the computer system containing the database, which can take a substantial amount of time. Further, the to actually apply the transaction against the database, the database-accessing program must obtain the appropriate locks, or access controls, on the database, which can involve further network communication and synchronization with database-accessing programs executing on still other computer systems.
Further, because each process has an extensive set of resources devoted to it, the operations of creating and destroying processes each have significant time cost. In the conventional approach of executing each database-accessing program in a separate process, this significant time cost is incurred any time an database-accessing program begins or ends execution. In addition, many of the kinds resources devoted to separate processes are scarce, and allocating shares of these kinds of resources to each of a large number of processes further degrades the performance of the computer system and limits the number of other programs that can simultaneously execute on the computer system.
Given the significant disadvantages of the conventional approach to executing database database-accessing programs, an alternative approach to executing database programs that reduces redundant retrieval from database servers and reduces process overhead would have significant utility.
SUMMARY OF THE INVENTION
In accordance with the present invention a database object caching facility (“the facility”) maintains a hierarchy of caches that enables database-accessing programs processing database transactions to share retrieved database objects across database transactions, reducing process overhead and redundant retrieval from database servers, while still maintaining read-repeatable transactional isolation. “Database objects” as used herein means any unit of data that may be retrieved from a database including tables, fields, files, programmatic objects, and other units of data.
The facility executes multiple database-accessing programs in the same process, and utilizes a hierarchy of caches to cache database objects retrieved from a database server. The hierarchy of caches includes one program cache for each database-accessing program, and a single process cache. The facility uses each program cache to store database objects recently retrieved by the cache's database-accessing program, and uses the process cache to store database objects recently retrieved by any of the database-accessing programs. The program caches each allow a database-accessing program to quickly obtain a database object retrieved earlier by the same database-accessing program. The process cache, on the other hand, allows a database-accessing program to quickly obtain a database object recently retrieved by other database-accessing programs. The hierarchy of caches may optionally include additional caches.


REFERENCES:
patent: 5023776 (1991-06-01), Gregor
patent: 5241641 (1993-08-01), Iwasa et al.
patent: 5261066 (1993-11-01), Jouppi et al.
patent: 5276848 (1994-01-01), Gallagher et al.
patent: 5307477 (1994-04-01), Taylor et al.
patent: 5369778 (1994-11-01), Soucie et al.
patent: 5386547 (1995-01-01), Jouppi
patent: 5542062 (1996-07-01), Taylor et al.
patent: 5544353 (1996-08-01), Forman et al.
patent: 5584013 (1996-12-01), Cheong et al.
patent: 5596745 (1997-01-01), Lai et al.
patent: 5617568 (1997-04-01), Ault et al.
patent: 5666546 (1997-09-01), Donnan
patent: 5680571 (1997-10-01), Bauman
patent: 5694573 (1997-12-01), Cheong et al.
patent: 5706506 (1998-01-01), Jensen et al.
patent: 5717919 (1998-02-01), Kodavalla et al.
patent: 5781732 (1998-07-01), Adams
patent: 5787300 (1998-07-01), Wijaya
patent: 5860074 (1999-01-01), Rowe et al.
patent: 5884316 (1999-03-01), Bernstein et al.
Gray, Jim et al.,Transaction Processing: Concepts and Techniques,Morgan Kaufmann Publishers, Inc., San Francisco, CA, 1993.
Truman, Joe, “COMA-F: A Non-Hierarchical Cache Only Memory Architecture,” A Dissertation submitted to the Department of Electrical Engineering and the Committee on Graduate Studies of Stanford University, Stanford University, 1995, pp. 1-110.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Processing multiple database transactions in the same... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Processing multiple database transactions in the same..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Processing multiple database transactions in the same... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2600217

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.