Method and system for providing aggregate data access
DCFirst Claim
1. A system for generating aggregate data values from data stored in a data source, comprising:
- a processor;
a database service available in a network environment, the database service comprising (a) a data source, (b) an abstract data layer, wherein the abstract data layer comprises a plurality of logical fields used to compose an abstract query to query the data source, and for each logical field, providing an access method specifying at least a method for accessing the data, wherein at least one logical field specifies an aggregate access method, wherein the aggregate access method specifies a set of input data and an expression for determining an aggregate data value from the set of input data; and
(c) a runtime component configured to process an abstract query that includes the at least one logical field by (i) retrieving a definition for the aggregate access method, (ii) determining aggregate data values according to the definition, (iii) merging the aggregate data values with query results obtained for logical fields, other than the at least one logical field, included in the abstract query, and (iv) returning the results to the requesting entity.
4 Assignments
Litigations
0 Petitions
Accused Products
Abstract
A method and apparatus for defining and processing aggregate data is disclosed. Using database abstraction techniques, a set of logical fields may be used to compose queries of a set of underlying physical data sources. In one embodiment, a logical field may represent an aggregate data value calculated from the elements appearing in a column of a relational table in an underlying physical data source. The elements may be divided into to subsets to calculate multiple aggregate values. An abstract derived entity is a data object present in a database abstraction model that may be accessed as though it were a relational table contained in an underlying physical data source. In one embodiment, columns of the table defined by the abstract derived entity may be populated with aggregate data values joined to other data as specified by a composition rule included in the definition of the abstract derived entity.
-
Citations
7 Claims
-
1. A system for generating aggregate data values from data stored in a data source, comprising:
-
a processor; a database service available in a network environment, the database service comprising (a) a data source, (b) an abstract data layer, wherein the abstract data layer comprises a plurality of logical fields used to compose an abstract query to query the data source, and for each logical field, providing an access method specifying at least a method for accessing the data, wherein at least one logical field specifies an aggregate access method, wherein the aggregate access method specifies a set of input data and an expression for determining an aggregate data value from the set of input data; and (c) a runtime component configured to process an abstract query that includes the at least one logical field by (i) retrieving a definition for the aggregate access method, (ii) determining aggregate data values according to the definition, (iii) merging the aggregate data values with query results obtained for logical fields, other than the at least one logical field, included in the abstract query, and (iv) returning the results to the requesting entity. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer-readable storage medium, that when executed by a processor performs operations comprising:
-
providing, for a requesting entity, an abstract data layer comprising a plurality of logical fields for composing an abstract query, and for each logical field; defining an access method that specifies at least a method for accessing the data corresponding to the logical field, wherein at least one logical field specifies an aggregate access method for accessing the data corresponding to the at least one logical field, wherein the aggregate access method specifies a set of input data and an expression for determining an aggregate data value from the set of input data; receiving, from the requesting entity, an abstract query that includes the at least one logical field specifying an aggregate access method; retrieving a set of input data defined by the aggregate access method; determining at least an aggregate data value from the set of input data; transforming each logical field, other than the at least one logical field, included in the abstract query into a query contribution that is consistent with the data source specified by the access method for each logical field; accessing the data source corresponding to each of the above logical fields using the query contribution and retrieving a set of query results data; and returning, to the requesting entity, the at least one aggregate data value and the set of query results data.
-
Specification