System and method for efficient relational query generation and tuple-to-object translation in an object-relational gateway supporting class inheritance
First Claim
1. A computer program product comprising a computer readable medium having computer program logic recorded thereon for enabling a processor to process object-oriented queries in a computing environment having a relational database management system (RDBMS), objects in said computing environment conforming to a class inheritance hierarchy defined by an object-oriented schema, said computer program logic comprising:
- receiving means for enabling the processor to receive an object-oriented query and at least one prefetch path from an object-oriented source, said object-oriented query identifying one or more target objects of a target class which are desired to be constructed, said at least one prefetch path identifying one or more prefetch path objects which are desired to be constructed; and
query set generating means for enabling the processor to generate from said object-oriented query a set of relational queries that, when processed, enable said RDBMS to retrieve tuples required to initialize base attributes of said target objects that are defined by said target class and by any super-classes and sub-classes of said target class;
wherein said query set generating means includes;
(a) means for determining whether the number of super-classes of said target class is greater than a super-class limit, and(b) means for generating a query for each super-class of said target class if the number of super-classes of said target class is greater than said super-class limit, wherein said query, when processed, enables said RDBMS to retrieve base attributes of said each super-class.
0 Assignments
0 Petitions
Accused Products
Abstract
An object-relational database gateway for use in a computing environment having a relational database management system (RDBMS) is disclosed. Object-oriented objects in the computing environment conform to a class inheritance hierarchy defined by an object-oriented schema. The gateway includes a query generator to generate from an object-oriented query a set of relational queries. The object-oriented query identifies one or more target objects of a target class which are desired to be constructed. The set of relational queries, when processed, enable the RDBMS to retrieve tuples required to initialize base attributes of the target objects that are defined by the target class and by any super-classes and sub-classes of the target class. The gateway also includes a tuple-to-object translator to translate the tuples to object-oriented objects consistent with the class inheritance hierarchy.
-
Citations
27 Claims
-
1. A computer program product comprising a computer readable medium having computer program logic recorded thereon for enabling a processor to process object-oriented queries in a computing environment having a relational database management system (RDBMS), objects in said computing environment conforming to a class inheritance hierarchy defined by an object-oriented schema, said computer program logic comprising:
-
receiving means for enabling the processor to receive an object-oriented query and at least one prefetch path from an object-oriented source, said object-oriented query identifying one or more target objects of a target class which are desired to be constructed, said at least one prefetch path identifying one or more prefetch path objects which are desired to be constructed; and query set generating means for enabling the processor to generate from said object-oriented query a set of relational queries that, when processed, enable said RDBMS to retrieve tuples required to initialize base attributes of said target objects that are defined by said target class and by any super-classes and sub-classes of said target class; wherein said query set generating means includes; (a) means for determining whether the number of super-classes of said target class is greater than a super-class limit, and (b) means for generating a query for each super-class of said target class if the number of super-classes of said target class is greater than said super-class limit, wherein said query, when processed, enables said RDBMS to retrieve base attributes of said each super-class. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for processing object-oriented queries so as to retrieve data from a relational database management system (RDBMS), said method steps comprising:
-
(1) receiving an object-oriented query and at least one prefetch path from an object-oriented source, said object-oriented query identifying one or more target objects of a target class which are desired to be constructed, said at least one prefetch path identifying one or more prefetch path objects which are desired to be constructed; and (2) generating from said object-oriented query a set of relational queries that, when processed, enable said RDBMS to retrieve tuples required to initialize base attributes of said target objects that are defined by said target class and by any super-classes and sub-classes of said target class; wherein step (2) includes the steps of; (a) determining whether the number of super-classes of said target class is greater than a super-class limit, and (b) if the number of super-classes of said target class is greater than said super-class limit, then generating a query for each super-class of said target class, wherein said query, when processed, enables said RDBMS to retrieve base attributes of said each super-class. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A computer program product comprising a computer readable medium having computer program logic recorded thereon for enabling a processor in a computer system to process object-oriented queries so as to retrieve data from a relational database management system (RDBMS), said computer program product comprising:
-
a query generator to enable said processor to generate from an object-oriented query a set of relational queries, said object-oriented query identifying one or more target objects of a target class which are desired to be constructed, said set of relational queries, when processed, enabling said RDBMS to retrieve tuples required to initialize base attributes of said target objects that are defined by said target class and by any super-classes and sub-classes of said target class, wherein each of said relational queries is designed to retrieve tuples from fewer than a predetermined number of tables in said RDBMS; and a tuple-to-object translator to enable said processor to translate said tuples to object-oriented objects consistent with a class inheritance hierarchy defined by an object-oriented schema. - View Dependent Claims (27)
-
Specification