US5765147A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Query rewrite for extended search capabilities
Assignee: International Business Machines Corp
•
Filing: 1996-11-21
•
Granted: 1998-06-09
•
Expires: 2016-11-21
Abstract
Abstract A method, apparatus, and article of manufacture for optimizing queries in a database management system, wherein the queries comprise content-based searches of data types that are supported through the use of appropriate indexing techniques not known or available to the database management system. The queries are automatically rewritten or optimized to take advantage of the indexing techniques.
Inventors
- 👤 Nelson Mendonca Mattos
- 👤 Stefan Dessloch
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-28 15:33
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/24; G06F16/245; G06F16/2453; G06F16/24534; G06F16/24547; G06F16/24542; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99932; Y10S707/99933; Y10S707/99934
Claims Analysis
Total Claims: 17
Claim 1
Independent Claim
97 words
A method of optimizing a query in a computer having a memory, the query being performed by the computer to retrieve data from a database stored on a data storage device coupled to the computer, the method comprising the steps of: (a) accepting a query into the memory of the computer; (b) rewriting the query in the memory of the computer by substituting therein a reference to a user-defined index function for a reference to an associated user-defined non-index function; and (c) performing the query in the memory of the computer, including performing the user-defined index function.
Claim 2
Independent Claim
97 words
A method of optimizing a query in a computer having a memory, the query being performed by the computer to retrieve data from a database stored on a data storage device coupled to the computer, the method comprising the steps of: (a) accepting a query into the memory of the computer; (b) rewriting the query in the memory of the computer by substituting therein a reference to a user-defined index function for a reference to an associated user-defined non-index function; and (c) performing the query in the memory of the computer, including performing the user-defined index function.
Claim 3
Dependent Claim
52 words
The method of claim 1 above, wherein the query references a user-defined data type, the user-defined index function operates on the user-defined data type, and the step of performing the user-defined index function comprises the step of performing the user-defined index function using a relational extender associated with the user-defined data type.
Claim 4
Dependent Claim
24 words
The method of claim 1 above, wherein the rewriting step further comprises the step of optimizing the query in the memory of the computer.
Claim 5
Dependent Claim
99 words
The method of claim 1 above, wherein the step of rewriting the query comprises the steps of: determining whether the user-defined index function exists for the user-defined function specified in the query; determining whether an index has been defined for a column referenced by the user-defined function specified in the query; and replacing the user-defined function with the user-defined index function when the user-defined index function is determined to exist for the user-defined function specified in the query and the index is determined to have been defined for the column referenced by the user-defined function specified in the query.
Claim 6
Dependent Claim
51 words
The method of claim 4 above, wherein the step of determining whether an index has been defined for a column referenced by the user-defined function specified in the query comprises the step of retrieving a name of the index using a schema name, table name, and column name from the query.
Claim 7
Independent Claim
104 words
An apparatus for optimizing query, comprising: (a) a computer having a memory and a data storage device coupled thereto, wherein the data storage device stores a relational database; (b) means, performed by the computer, for accepting a query into the memory of the computer; (c) means, performed by the computer, for rewriting the query in the memory of the computer by substituting therein a reference to a user-defined index function for a reference to an associated user-defined non-index function; and (d) means, performed by the computer, for performing the query in the memory of the computer, including means for performing the user-defined index function.
Claim 8
Independent Claim
104 words
An apparatus for optimizing query, comprising: (a) a computer having a memory and a data storage device coupled thereto, wherein the data storage device stores a relational database; (b) means, performed by the computer, for accepting a query into the memory of the computer; (c) means, performed by the computer, for rewriting the query in the memory of the computer by substituting therein a reference to a user-defined index function for a reference to an associated user-defined non-index function; and (d) means, performed by the computer, for performing the query in the memory of the computer, including means for performing the user-defined index function.
Claim 9
Dependent Claim
51 words
The apparatus of claim 6 above, wherein the query references a user-defined data type, the user-defined index function operates on the user-defined data type, and the means for performing the user-defined index function comprises means for performing the user-defined index function using a relational extender associated with the user-defined data type.
Claim 10
Dependent Claim
24 words
The apparatus of claim 6 above, wherein the means for rewriting further comprises means for optimizing the query in the memory of the computer.
Claim 11
Dependent Claim
100 words
The apparatus of claim 6 above, wherein the means for rewriting comprises: means for determining whether the user-defined index function exists for the user-defined function specified in the query; means for determining whether an index has been defined for a column referenced by the user-defined function specified in the query; and means for replacing the user-defined function with the user-defined index function when the user-defined index function is determined to exist for the user-defined function specified in the query and the index is determined to have been defined for the column referenced by the user-defined function specified in the query.
Claim 12
Dependent Claim
50 words
The apparatus of claim 8 above, wherein the means for determining whether an index has been defined for a column referenced by the user-defined function specified in the query comprises means for retrieving a name of the index using a schema name, table name, and column name from the query.
Claim 13
Dependent Claim
114 words
A program medium readable by a computer having a memory and embodying one or more programs of instructions executable by the computer to perform method steps for optimizing query, the query being performed by the computer to retrieve data from a database stored in an data storage device coupled to the computer, the method comprising the steps of: (a) accepting a query into the memory of the computer; (b) rewriting the query in the memory of the computer by substituting therein a reference to a user-defined index function for a reference to an associated user-defined non-index function; and (c) performing the query in the memory of the computer, including performing the user-defined index function.
Claim 14
Dependent Claim
114 words
A program medium readable by a computer having a memory and embodying one or more programs of instructions executable by the computer to perform method steps for optimizing query, the query being performed by the computer to retrieve data from a database stored in an data storage device coupled to the computer, the method comprising the steps of: (a) accepting a query into the memory of the computer; (b) rewriting the query in the memory of the computer by substituting therein a reference to a user-defined index function for a reference to an associated user-defined non-index function; and (c) performing the query in the memory of the computer, including performing the user-defined index function.
Claim 15
Dependent Claim
52 words
The method of claim 11 above, wherein the query references a user-defined data type, the user-defined index function operates on the user-defined data type, and the step of performing the user-defined index function comprises the step of performing the user-defined index function using a relational extender associated with the user-defined data type.
Claim 16
Dependent Claim
24 words
The method of claim 11 above, wherein the rewriting step further comprises the step of optimizing the query in the memory of the computer.
Claim 17
Dependent Claim
35 words
The method of claim 11 above, wherein the step of rewriting the query comprises the step of retrieving a name for the index using a schema name, table name, and column name from the query.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2001-06-08 | 2001-12-08 | 2002-06-09 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2005-06-08 | 2005-12-08 | 2006-06-09 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2009-06-08 | 2009-12-08 | 2010-06-09 | $7700.00 | Window Closed / Lapsed |