Query processing management in a database management system
First Claim
1. A computer-implemented method for query processing management in a database management system (DBMS), the method comprising:
- detecting, by the DBMS, that a query has a set of subqueries;
detecting, by the DBMS, that the set of subqueries relate to a set of data structures;
selecting, from the set of data structures, a lead data structure of the set of data structures using a selection criterion;
identifying, from the lead data structure of the set of data structures, a set of input columns;
identifying, from the set of data structures other than the lead data structure, a set of output columns;
constructing, using the set of input columns and the set of output columns, a hash data structure, wherein the hash data structure comprises a plurality of hash values correlated to a plurality of data input columns; and
performing a join operation with the lead data structure and a second data structure of the set of data structure comprising;
searching the plurality of hash values for a single hash value matching a second hash value for a second data column of the second data structure; and
based on not finding a match between the second hash value and the plurality of hash values, performing a join operation between the lead data structure and the second data structure and building a dynamic join result cache comprising a plurality of hash values that using input columns resulting from the join operation of the lead data structure and the second data structure.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed aspects relate to query processing management in a database management system (DBMS). The DBMS may detect that a query has a set of subqueries. The DBMS may detect that the set of subqueries indicates a set of data structures. A lead data structure may be selected from the set of data structures using a selection criterion. A set of input columns may be identified from the lead data structure of the set of data structures. A set of output columns may be identified from the set of data structures other than the lead data structure. A hash data structure may be constructed using the set of input columns and the set of output columns. A cache may be built based on the hash data structure.
13 Citations
18 Claims
-
1. A computer-implemented method for query processing management in a database management system (DBMS), the method comprising:
-
detecting, by the DBMS, that a query has a set of subqueries; detecting, by the DBMS, that the set of subqueries relate to a set of data structures; selecting, from the set of data structures, a lead data structure of the set of data structures using a selection criterion; identifying, from the lead data structure of the set of data structures, a set of input columns; identifying, from the set of data structures other than the lead data structure, a set of output columns; constructing, using the set of input columns and the set of output columns, a hash data structure, wherein the hash data structure comprises a plurality of hash values correlated to a plurality of data input columns; and performing a join operation with the lead data structure and a second data structure of the set of data structure comprising; searching the plurality of hash values for a single hash value matching a second hash value for a second data column of the second data structure; and based on not finding a match between the second hash value and the plurality of hash values, performing a join operation between the lead data structure and the second data structure and building a dynamic join result cache comprising a plurality of hash values that using input columns resulting from the join operation of the lead data structure and the second data structure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A system for query processing management in a database management system (DBMS), the system comprising:
-
a memory having a set of computer readable computer instructions, and a processor for executing the set of computer readable instructions, the set of computer readable instructions including; detecting, by the DBMS, that a query has a set of subqueries; detecting, by the DBMS, that the set of subqueries relate to a set of data structures; selecting, from the set of data structures, a lead data structure of the set of data structures using a selection criterion; identifying, from the lead data structure of the set of data structures, a set of input columns; identifying, from the set of data structures other than the lead data structure, a set of output columns; constructing, using the set of input columns and the set of output columns, a hash data structure, wherein the hash data structure comprises a plurality of hash values correlated to a plurality of data input columns; and performing a join operation with the lead data structure and a second data structure of the set of data structure comprising; searching the plurality of hash values for a single hash value matching a second hash value for a second data column of the second data structure; and based on not finding a match between the second hash value and the plurality of hash values, performing a join operation between the lead data structure and the second data structure and building a dynamic join result cache comprising a plurality of hash values that using input columns resulting from the join operation of the lead data structure and the second data structure.
-
-
18. A computer program product for query processing management in a database management system (DBMS), the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processor to cause the processor to perform a method comprising:
-
detecting, by the DBMS, that a query has a set of subqueries; detecting, by the DBMS, that the set of subqueries relate to a set of data structures; selecting, from the set of data structures, a lead data structure of the set of data structures using a selection criterion; identifying, from the lead data structure of the set of data structures, a set of input columns; identifying, from the set of data structures other than the lead data structure, a set of output columns; constructing, using the set of input columns and the set of output columns, a hash data structure, wherein the hash data structure comprises a plurality of hash values correlated to a plurality of data input columns; and performing a join operation with the lead data structure and a second data structure of the set of data structure comprising; searching the plurality of hash values for a single hash value matching a second hash value for a second data column of the second data structure; and based on not finding a match between the second hash value and the plurality of hash values, performing a join operation between the lead data structure and the second data structure and building a dynamic join result cache comprising a plurality of hash values that using input columns resulting from the join operation of the lead data structure and the second data structure.
-
Specification