The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
May. 11, 2010
Filed:
Nov. 14, 2007
Guy Maring Lohman, San Jose, CA (US);
Marki Volker, San Jose, CA (US);
Mir Hamid Pirahesh, San Jose, CA (US);
Vijayshankar Raman, San Jose, CA (US);
David Everett Simmen, San Jose, CA (US);
Guy Maring Lohman, San Jose, CA (US);
Marki Volker, San Jose, CA (US);
Mir Hamid Pirahesh, San Jose, CA (US);
Vijayshankar Raman, San Jose, CA (US);
David Everett Simmen, San Jose, CA (US);
International Business Machines Corporation, Armonk, NY (US);
Abstract
A method, system, and computer program product to make query processing more robust in the face of optimization errors. The invention validates the statistics and assumptions used for compiling a query as the query is executed and, when necessary, progressively re-optimizes the query in mid-execution based on the knowledge learned during its partial execution. The invention selectively places a number of CHECK operators in a query execution plan to validate the optimizer's cardinality estimates against actual cardinalities. Errors beyond a threshold trigger re-optimization, and the optimizer decides whether the old plan is still optimal and whether to re-use previously computed results. The invention addresses arbitrary SQL queries whose plans can contain sub-queries, updates, trigger checking, and view maintenance operations. The invention can handle concurrent update transactions or updates of common sub-expressions in a query execution plan without compromising consistency and isolation as locking information is tied to the record ID.