Query processor for parallel processing in homogenous and heterogenous databases
First Claim
1. A query processor for parallel processing of first signals indicative of an input query referencing information stored in one or more databases each of which is accessible through an independent database engine, said input query specifying conditions for an answer set of said information, comprising,translator means for analyzing said first signals and transforming them into second signals representing queries each of which is directed to one or more base tables,splitter means for receiving said second signals and producing therefrom third signals corresponding to a plurality of separate queries capable of being executed independently and in parallel, each of said separate queries being compatible with one of said database engines, andrunner means for applying said third signals simultaneously to respective ones of said database engines, receiving, in response thereto, fourth signals generated by each of said database engines which correspond to answer sets for the separate queries, and, producing fifth signals representing an answer set for said input query.
3 Assignments
0 Petitions
Accused Products
Abstract
A query processor for parallel processing translates an input query which references data stored in one or more homogenous or heterogenous databases into a plurality of parallel output queries each of which is directed to a single one of the databases or a partition thereof. A runner combines the results of each of the output queries and integrates them into a single coherent answer set.
-
Citations
13 Claims
-
1. A query processor for parallel processing of first signals indicative of an input query referencing information stored in one or more databases each of which is accessible through an independent database engine, said input query specifying conditions for an answer set of said information, comprising,
translator means for analyzing said first signals and transforming them into second signals representing queries each of which is directed to one or more base tables, splitter means for receiving said second signals and producing therefrom third signals corresponding to a plurality of separate queries capable of being executed independently and in parallel, each of said separate queries being compatible with one of said database engines, and runner means for applying said third signals simultaneously to respective ones of said database engines, receiving, in response thereto, fourth signals generated by each of said database engines which correspond to answer sets for the separate queries, and, producing fifth signals representing an answer set for said input query.
-
8. A method of processing an input query referencing information stored in one or more databases each of which is accessible through an independent database engine, said input query specifying conditions for an answer subset of said information which is divisible into a plurality of component subsets, comprising,
producing input query signals representative of said input query, producing database structure signals indicative of the structures of each one of said one or more databases, combining said input query signals and said database structure signals to produce a plurality of output query signals representing output queries each of which references the data in one of said databases or a partition thereof, and applying, in parallel, each of said output query signals only to the respective database or partition thereof referenced by its corresponding represented output query.
Specification