Systems and methods for data storage and retrieval using algebraic relations composed from query language statements
First Claim
1. A computer system implemented method, the computer system comprising at least one processor, memory and a data store, the method comprising:
- (A) receiving a first query language statement referencing a plurality of data sets;
(B) providing a data set information store for storing information regarding the data sets specified in the first query language statement,(C) wherein temporal information is associated with each of the data sets in the data set information store to indicate the time at which information regarding the data set is added to the data set information store;
(D) composing a first plurality of algebraic relations referencing the data sets specified in the first query language statement, wherein each of the algebraic relations in the first plurality of algebraic relations comprises a respective first expression including a symbolic representation of at least a first respective data set, a respective second expression including a symbolic representation of at least a second respective data set, and a relational operator symbolically defining a mathematical relationship between the respective first expression and the respective second expression;
(E) storing the first plurality of algebraic relations in a relation store in the memory;
(F) after storing the first plurality of algebraic relations in the relation store, receiving a second query language statement referencing a second plurality of data sets;
(G) composing a second plurality of algebraic relations referencing the data sets specified in the second query language statement;
(H) storing the second plurality of algebraic relations in the relation store;
(I) using the at least one processor to provide a data set in response to the second query language statement using at least one algebraic relation from the first plurality of algebraic relations and at least one algebraic relation from the second plurality of algebraic relations; and
(J) temporally redefining the data set information store by removing data sets from the data set information store that are associated with temporal information prior to a specified time; and
(H) removing algebraic relations from the relation store that reference the data sets removed from the data set information store.
4 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for storing and accessing data. A query language statement may reference a plurality of data sets and a plurality of algebraic relations between the data sets may be composed from the query language statement. The algebraic relations may be used to define new data sets and to optimize access to data sets. A store of algebraic relations may be accumulated over time. Alternative collections of algebraic relations may be generated and evaluated to determine an optimized collection of algebraic relations to use in calculating and providing a requested data set. The optimization may be performed using the algebraic relations rather than retrieving underlying data sets from storage. As a result, optimization may be performed at processor speeds to minimize the amount of time required for data to be retrieved from slower storage.
-
Citations
30 Claims
-
1. A computer system implemented method, the computer system comprising at least one processor, memory and a data store, the method comprising:
-
(A) receiving a first query language statement referencing a plurality of data sets; (B) providing a data set information store for storing information regarding the data sets specified in the first query language statement, (C) wherein temporal information is associated with each of the data sets in the data set information store to indicate the time at which information regarding the data set is added to the data set information store; (D) composing a first plurality of algebraic relations referencing the data sets specified in the first query language statement, wherein each of the algebraic relations in the first plurality of algebraic relations comprises a respective first expression including a symbolic representation of at least a first respective data set, a respective second expression including a symbolic representation of at least a second respective data set, and a relational operator symbolically defining a mathematical relationship between the respective first expression and the respective second expression; (E) storing the first plurality of algebraic relations in a relation store in the memory; (F) after storing the first plurality of algebraic relations in the relation store, receiving a second query language statement referencing a second plurality of data sets; (G) composing a second plurality of algebraic relations referencing the data sets specified in the second query language statement; (H) storing the second plurality of algebraic relations in the relation store; (I) using the at least one processor to provide a data set in response to the second query language statement using at least one algebraic relation from the first plurality of algebraic relations and at least one algebraic relation from the second plurality of algebraic relations; and (J) temporally redefining the data set information store by removing data sets from the data set information store that are associated with temporal information prior to a specified time; and (H) removing algebraic relations from the relation store that reference the data sets removed from the data set information store. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
Specification