发明名称 |
Logical object search framework and application programming interface |
摘要 |
A method, computer program product, and system for executing and administering queries in a data management system, and particularly a relational data management system. Logical objects can be queried by providing a translation from a logical query in a pre-defined logical schema to a physical query against the physical data management system, such as by translating a database query constructed using an Object Query Language (OQL) into a query in Structured Query Language (SQL) without the user needing to know the details of the physical data management system such as the structure of the underlying relational databases. |
申请公布号 |
US9165043(B2) |
申请公布日期 |
2015.10.20 |
申请号 |
US200912625889 |
申请日期 |
2009.11.25 |
申请人 |
|
发明人 |
Jin Maobing;Rauf Tariq |
分类号 |
G06F7/00;G06F17/30 |
主分类号 |
G06F7/00 |
代理机构 |
Edell, Shapiro & Finnan, LLC |
代理人 |
Carroll Terry;Edell, Shapiro & Finnan, LLC |
主权项 |
1. A method of processing a query, comprising:
providing a pre-defined logical schema to a user of a database system, wherein the pre-defined logical schema is mapped to at least two relational database entities of different databases storing data therein; receiving a logical query for data stored in the databases from the user, wherein the logical query is written in an object-oriented query language utilizing the pre-defined logical schema, and comprises two or more predicates and an operator specifying an action to take with one or more of the predicates; in response to receiving the logical query, interpreting the logical query using the pre-defined logical schema to determine which of the relational database entities is a subject of the logical query, and which of the relational database entities is associated with each predicate; requesting the database of each determined relational database entity of the logical query to:
translate each of the associated predicates of that database in the logical query into a query language specific to that database, wherein at least two different databases translate an associated predicate; andapply an authorization rule with each of the associated predicates of that database in the logical query, wherein the authorization rule identifies unauthorized data: receiving a translated predicate query for each determined predicate of the logical query from its associated database of the relational database entity, wherein each translated predicate query is written in a relational query language specific to the associated database and is a translation of one of the object-oriented predicates in the logical query; combining each translated predicate query received from the databases of the determined relational database entities into a master query using the operator; executing the master query against the databases of the relational database entities that are subjects of the logical query; in response to executing the master query, receiving a query result set from the databases of the relational database entities that are subjects of the logical query; and providing the query result set to the user, wherein the query result set lacks the unauthorized data. |
地址 |
|