Claims
- 1. A database query system configured for use with a database management system, said database management system including a standard interface configured to receive database queries, the query system comprising:a parallel interface configured to receive a first database query; and a query decomposer configured to: detect a decomposition directive corresponding to the received database query; generate a plurality of subqueries from the received first database query, wherein said subqueries correspond to said directive; and convey said plurality of subqueries in parallel to the standard interface of the database management system; wherein said directive is embedded within a comment.
- 2. The system of claim 1, further comprising a result assembler configured to:receive results from said database management system generated in response to said subqueries; and generate an assembled result representative of a response to said first database query.
- 3. The system of claim 1, wherein said first database query is directed to said standard interface, and wherein receiving the first database query by the parallel interface comprises intercepting the first database query.
- 4. The system of claim 1, wherein said decomposer is configured to generate said subqueries in response to detecting said first database query is decomposable.
- 5. The system of claim 4, wherein said decomposer is further configured to route a second database query received by said parallel interface directly to said standard interface without decomposing said second database query, in response to determining said second database query is non-decomposable.
- 6. The system of claim 1, wherein the database management system is coupled to a database comprising multiple partitions, each of said partitions being independently accessible.
- 7. The system of claim 1, wherein generating said plurality of subqueries comprises generating a separate thread corresponding to each of said subqueries.
- 8. The system of claim 7, wherein each thread of said threads corresponding to said subqueries is executed in parallel on separate processors.
- 9. A computer system comprising:a processor; a storage element; and a database system configured to: receive a first database query; detect a decomposition directive corresponding to the received database query; generate a plurality of subqueries from the received first database query, wherein said subqueries correspond to said directive; and convey said plurality of subqueries in parallel to a database management system; wherein said directive is embedded within a comment.
- 10. The system of claim 9, further comprising a result assembler configured to:receive results from said database management system generated in response to said subqueries; and generate an assembled result representative of a response to said first database query.
- 11. The system of claim 9, wherein said first database query is directed to said standard interface, and wherein receiving the first database query by the parallel interface comprises intercepting the first database query.
- 12. The system of claim 9, wherein said decomposer is configured to generate said subqueries in response to detecting said first database query is decomposable.
- 13. The system of claim 12, wherein said decomposer is further configured to route a second database query received by said parallel interface directly to said standard interface without decomposing said second database query, in response to determining said second database query is non-decomposable.
- 14. The system of claim 9, wherein the database management system is coupled to a database comprising multiple partitions, each of said partitions being independently accessible.
- 15. The system of claim 9, wherein generating said plurality of subqueries comprises generating a separate thread corresponding to each of said subqueries.
- 16. The system of claim 15, wherein each thread of said threads corresponding to said subqueries is executed in parallel on separate processors.
- 17. A computer system comprising:a processor; a storage element; and a database system configured to: receive a first database query; detect a decomposition directive corresponding to the received database query; generate a plurality of subqueries from the received first database query, wherein said subqueries correspond to said directive; and convey said plurality of subqueries in parallel to a database management system.
- 18. The system of claim 17, wherein said database system comprises a query decomposer coupled to said database management system, wherein said query decomposer is configured to receive said first database query and generate said subqueries.
- 19. The system of claim 18, wherein said database system further comprises a result assembler configured to:receive results from said database management system generated in response to said subqueries; and generate an assembled result representative of a response to said first database query.
- 20. A computer readable medium comprising program instructions configured to perform database operations, said program instructions executable to:receive a first database query; detect a decomposition directive corresponding to the received database query; generate a plurality of subqueries from the received first database query, wherein said subqueries correspond to said directive; and convey said plurality of subqueries in parallel to a standard interface of a database management system; wherein said directive is embedded within a comment.
- 21. The system of claim 18, wherein said decomposer is configured to generate said subqueries in response to detecting said first database query is decomposable.
- 22. The system of claim 21, wherein said decomposer is further configured to route a second database query directly to said database management system without decomposing said second database query, in response to determining said second database query is non-decomposable.
- 23. The system of claim 17, wherein the database management system is coupled to a database comprising multiple partitions, each of said partitions being independently accessible.
- 24. The system of claim 23, wherein said database comprises data stored on said storage element.
- 25. The system of claim 23, wherein said database comprises data stored on a plurality of storage elements, each said partition corresponds to a separate storage element of said plurality of storage elements.
- 26. The system of claim 17, wherein generating said plurality of subqueries comprises generating a separate thread corresponding to each of said subqueries.
Parent Case Info
This application is a continuation of U.S. patent application Ser. No. 08/791,898, filed Jan. 31, 1997 now U.S. Pat. No. 6,289,334, which is a divisional application of U.S. application Ser. No. 08/189,497, filed Jan. 31, 1994, now U.S. Pat. No. 5,742,806, issued Apr. 21, 1998.
US Referenced Citations (12)
Continuations (1)
|
Number |
Date |
Country |
| Parent |
08/791898 |
Jan 1997 |
US |
| Child |
09/877427 |
|
US |