Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Page images | Web History | Sign in

Patents

  

Illlllllllllllllllllllllllllllllllllllllllllllli

US006457020B1

(12) United States Patent ao) Patent No.: us 6,457,020 Bi

Carey et al. (45) Date of Patent: Sep. 24,2002

(54) QUERY OPTIMIZATION USING A MULTI-LAYERED OBJECT CACHE

(75) Inventors: Michael James Carey; Gerald George Kiernan, both of San Jose, CA (US)

(73) Assignee: International Business Machines Corporation, Armonk, NY (US)

( * ) Notice: Subject to any disclaimer, the term of this patent is extended or adjusted under 35 U.S.C. 154(b) by 0 days.

(21) Appl. No.: 09/532,179

(22) Filed: Mar. 20, 2000

(51) Int. CI.7 G06F 17/30

(52) U.S. CI 707/103 R; 707/103 Y

(58) Field of Search 707/1, 2, 3, 4,

707/5, 6, 8, 10, 104.1, 103 R, 103 Y, 103,

103 Z

(56) References Cited

U.S. PATENT DOCUMENTS

5,448,727 A 9/1995 Annevelink 707/101

5,615,362 A * 3/1997 Jensen et al 707/103 R

5,706,506 A 1/1998 Jensen et al 707/103 R

5,812,996 A 9/1998 Rubin et al 707/2

5,822,749 A 10/1998 Agarwal 707/2

5,920,857 A 7/1999 Rishe et al 707/3

FOREIGN PATENT DOCUMENTS

WO WO 99/14676 3/1999

WO WO 99/35578 7/1999

[blocks in formation]

A method, apparatus, and article of manufacture for a computer-implemented technique for query optimization using a multi-layered object cache. An object-oriented query is executed to retrieve data from a database. The database is stored on a data storage device connected to a computer and queries are run against lower cache layers which have better performance characteristics than the external or upper layers. The multi-layered cache has an application objects (AOs) cache and a data access objects (DAOs) cache, and the application objects include methods deriving data from DAOs. The method includes a step of rewriting the query into a query directed against the DAOs cache, applying a pushdown transformation algorithm to the rewritten query directed against the DAOs cache, and executing the transformed query against the DAOs cache. The method also allows optimizing queries with path expressions by transforming path expression into joins. Another performance optimization includes using a limited data set only including the inserted and updated data, which allows the method to evaluate queries against a subset of a collection of cached objects instead of an entire collection of cached objects.

18 Claims, 4 Drawing Sheets

[blocks in formation]
[merged small][merged small][merged small][merged small][graphic][merged small][graphic]
[graphic][merged small][graphic][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][graphic][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small]
[merged small][merged small][merged small][merged small][graphic][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small]
« PreviousContinue »