Database management system and method for query process for the same
First Claim
1. A database management system comprising:
- a decision management node having analysis means of receiving a query, analyzing said query, and generating the query processing procedure and decision means of deciding the distribution nodes and join nodes for performing the execution process on the basis of the query analysis result by said analysis means;
at least one distribution node having storage means of distributing and storing the database to be queried and distribution means of retrieving information from said storage means and distributing the retrieved information to other nodes;
at least one join node having sorting means of sorting information distributed from said distribution node, merge means of merging said plurality of sorted information, if any, and join means of joining a query on the basis of said merged information;
an output node having output means of outputting the result for the query obtained from said join node; and
a network for transferring data between said nodes.
0 Assignments
0 Petitions
Accused Products
Abstract
A database management system for executing database operations in parallel by a plurality of nodes and a query processing method for it are described. The database management system contains a decision management node for deciding a distribution node for retrieving information so as to analyze a query received from an application program, generate a processing procedure for processing the query, and execute the process and a join node for sorting, merging, and joining the information retrieved by the distribution node. When the query process is executed, the distribution node decided by the decision management node retrieves the information to be processed and the join node decided by the decision management node also obtains the result for the query from the retrieved information. The query result is outputted from an output node and transferred to the application program.
125 Citations
19 Claims
-
1. A database management system comprising:
-
a decision management node having analysis means of receiving a query, analyzing said query, and generating the query processing procedure and decision means of deciding the distribution nodes and join nodes for performing the execution process on the basis of the query analysis result by said analysis means;
at least one distribution node having storage means of distributing and storing the database to be queried and distribution means of retrieving information from said storage means and distributing the retrieved information to other nodes;
at least one join node having sorting means of sorting information distributed from said distribution node, merge means of merging said plurality of sorted information, if any, and join means of joining a query on the basis of said merged information;
an output node having output means of outputting the result for the query obtained from said join node; and
a network for transferring data between said nodes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A query processing method of a database management system which has distribution nodes having storage means of storing information for retrieving information from said storage means and for distributing and sorting the retrieved information to other nodes, join nodes for sorting information distributed from said distribution nodes, merging said plurality of sorted information, if any, and merging and joining a query on the basis of said merged information, and at least one decision management node for receiving said query, analyzing said query, and generating the query processing procedure, and for deciding the distribution nodes and join nodes for performing the execution process on the basis of the query analysis result of said analysis means, comprising the steps of:
- deciding said distribution nodes on the basis of the query analysis result of said analysis means in said decision management node, calculating the expected processing times in said distribution nodes, and deciding the join nodes on the basis of said processing times;
retrieving information from said storage means on the basis of said query analysis result in each of said decided distribution nodes and distributing and sorting said retrieved information to other nodes;
sorting information distributed from said distribution nodes in each of said decided join nodes, merging said plurality of sorted information, if any, and merging and joining a query on the basis of said merged information; and
outputting the results for the query obtained from said join nodes.
- deciding said distribution nodes on the basis of the query analysis result of said analysis means in said decision management node, calculating the expected processing times in said distribution nodes, and deciding the join nodes on the basis of said processing times;
-
14. A query processing method of a database management system having a plurality of processing nodes which are connected via a network, wherein at least one of said processing nodes has a storage unit wherein a database is stored, comprising the steps of:
-
analyzing a query having a condition expression containing a variable in one of said plurality of nodes;
generating a plurality of processing procedure candidates to be executed in said plurality of nodes so as to process said query on the basis of said analysis result;
retrieving the database information to be processed for said query from said plurality of nodes on the basis of the value which is substituted for said variable and the information indicating the data storage status of said database which is given beforehand and selecting the distribution node for distributing said database information to other nodes and the join node for executing a database operation for the database information distributed by said distribution node;
deciding the processing procedure to be executed by said selected distribution node and join node among said plurality of processing procedure candidates;
assigning the process to be executed in each of said distribution node and said join node to said distribution node and said join node according to said decided processing procedure; and
obtaining the process result for said query by executing said assigned process in said distribution node and said join node. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification