Methods and systems for database statement execution plan optimization
First Claim
Patent Images
1. A method for executing an execution plan comprising:
- compiling a database statement before the database statement is executed, wherein the database statement is compiled byobtaining a value of a database statement placeholder prior to execution, andoptimizing said execution plan based on said value; and
executing said execution plan;
wherein said value is obtained by;
allocating a frame in a memory,allocating a buffer within said frame, andreading said value into said buffer.
2 Assignments
0 Petitions
Accused Products
Abstract
The methods and systems for database statement execution plan optimization exploit bind variable data available on the network to build and optimize an execution plan for the statement. A system for database statement execution plan optimization comprises a bind variable analyzer, a frame allocator, and an optimizer, in addition to a parser for parsing and analyzing the statement, a type checker for type checking the statement, and a tree builder for building an expression tree.
-
Citations
38 Claims
-
1. A method for executing an execution plan comprising:
compiling a database statement before the database statement is executed, wherein the database statement is compiled by obtaining a value of a database statement placeholder prior to execution, and optimizing said execution plan based on said value; and executing said execution plan; wherein said value is obtained by; allocating a frame in a memory, allocating a buffer within said frame, and reading said value into said buffer. - View Dependent Claims (2, 3, 4, 5, 6)
-
7. A system for executing an execution plan comprising:
-
logic for compiling a database statement before the database statement is executed, wherein the logic for compiling the database statement comprises logic for obtaining a value of a database statement placeholder prior to execution, and logic for optimizing said execution plan based on said value; and logic for executing said execution plan; wherein said logic for obtaining the value comprises logic for allocating a frame in a memory, logic for allocating a buffer within said frame, and logic for reading said value into said buffer. - View Dependent Claims (8, 9, 10)
-
-
11. A computer readable medium having stored thereon one or more sequences of instructions for controlling execution of one or more processors and for executing an execution plan, the one or more sequences of instructions comprising instructions for:
-
compiling a database statement before the database statement is executed, wherein the database statement is compiled by obtaining a value of a database statement placeholder prior to execution, and optimizing said execution plan based on said value; and executing said execution plan; wherein said value is obtained by allocating a frame in a memory, allocating a buffer within said frame, and reading said value into said buffer. - View Dependent Claims (12, 13, 14)
-
-
15. A method for optimizing an execution plan comprising:
-
receiving a statement including a bind variable; compiling the statement before the statement is executed, wherein the statement is compiled by parsing the statement, the parsing comprising; performing semantic and syntactic analysis on the statement, and performing type checking on the statement; and reading a bind value of the bind variable, the reading including; allocating frames for the bind variable, allocating buffers in the frames, and reading the bind value into the buffer; and optimizing the statement using the bind value, wherein the reading and the optimizing occur prior to performing the type checking on the statement. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22)
-
-
23. A computer readable medium having stored thereon one or more sequences of instructions for controlling execution of one or more processors and for optimizing an execution plan, the one or more sequences of instructions comprising instructions for:
-
receiving a statement including a bind variable; compiling the statement before the statement is executed, wherein the statement is compiled by parsing the statement, the parsing comprising; performing semantic and syntactic analysis on the statement, and performing type checking on the statement, and reading a bind value of the bind variable, the reading including; allocating frames for the bind variables, allocating buffers in the frames, and reading the bind value into the buffer; and optimizing the statement using the bind values, wherein the reading and the optimizing occur prior to performing the type checking on the statement. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30)
-
-
31. A system for optimizing an execution plan comprising:
-
means for receiving a statement including a bind variable; means for compiling the statement before the statement is executed, the means for compiling the statement comprising; means for parsing the statement, the means for parsing comprising; means for performing semantic and syntactic analysis on the statement, and means for performing type checking on the statement, and means for reading a bind value of the bind variable, the means for reading including; means for allocating frames for the bind variable, means for allocating buffers in the frames, and means for reading the bind value into the buffer; and means for optimizing the statement using the bind values, wherein the reading and the optimizing occur prior to performing the type checking on the statement. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38)
-
Specification