Data access using aggregation
First Claim
Patent Images
1. A computerized method for accessing information organized by time, the method comprising:
- reading data from a write data structure in a database;
aggregating, using one or more hardware processors, the data to generate a plurality of data buckets associated with a corresponding plurality of time windows, wherein a first data bucket of the plurality of data buckets corresponds to a first time window of the plurality of time windows, and a second data bucket of the plurality of data buckets corresponds to a second time window of the plurality of time windows, the second time window being shorter than the first time window;
storing the plurality of data buckets in a read data structure in the database;
receiving a time constraint associated with a data query to the database, the time constraint describing a time period;
selecting the first data bucket for responding to the data query, wherein selecting the first data bucket comprises;
determining that at least a portion of the first data bucket satisfies the data query; and
determining that the first time window is a longest time window of the plurality of time windows that is within the time period;
selecting the second data bucket for responding to the data query, wherein selecting the second data bucket comprises;
determining that at least a portion of the second data bucket satisfies the data query; and
determining that the second time window is within the time period, wherein the second time window and the first time window do not overlap; and
providing a query response to the data query, the query response comprising at least a portion of the first data bucket and at least a portion of the second data bucket.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, systems, and computer program products for accessing data in a data structure are described. Data from a write data structure is read and aggregated into a plurality of data buckets, each data bucket corresponding to a time window. Each data bucket is stored in a read data structure.
8 Citations
21 Claims
-
1. A computerized method for accessing information organized by time, the method comprising:
-
reading data from a write data structure in a database; aggregating, using one or more hardware processors, the data to generate a plurality of data buckets associated with a corresponding plurality of time windows, wherein a first data bucket of the plurality of data buckets corresponds to a first time window of the plurality of time windows, and a second data bucket of the plurality of data buckets corresponds to a second time window of the plurality of time windows, the second time window being shorter than the first time window; storing the plurality of data buckets in a read data structure in the database; receiving a time constraint associated with a data query to the database, the time constraint describing a time period; selecting the first data bucket for responding to the data query, wherein selecting the first data bucket comprises; determining that at least a portion of the first data bucket satisfies the data query; and determining that the first time window is a longest time window of the plurality of time windows that is within the time period; selecting the second data bucket for responding to the data query, wherein selecting the second data bucket comprises; determining that at least a portion of the second data bucket satisfies the data query; and determining that the second time window is within the time period, wherein the second time window and the first time window do not overlap; and providing a query response to the data query, the query response comprising at least a portion of the first data bucket and at least a portion of the second data bucket. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus for configuring runtime bundles on a computer, the apparatus comprising:
-
one or more hardware processors; memory to store instructions that, when executed by he one or more hardware processors perform operations comprising; reading data from a write data structure in a database; aggregating, using one or more hardware processors, the data to generate a plurality of data buckets associated with a corresponding plurality of time windows, wherein a first data bucket of the plurality of data buckets corresponds to a first time window of the plurality of time windows, and a second data bucket of the plurality of data buckets corresponds to a second time window of the plurality of time windows, the second time window being shorter than the first time window; storing the plurality of data buckets in a read data structure in the database; receiving a time constraint associated with a data query to the database, the time constraint describing a time period; selecting the first data bucket for responding to the data query, wherein selecting the first data bucket comprises; determining that at least a portion of the first data bucket satisfies the data query; and determining that the first time window is a longest time window of the plurality of time windows that is within the time period; selecting the second data bucket for responding to the data query, wherein selecting the second data bucket comprises; determining that at least a portion of the second data bucket satisfies the data query; and determining that the second time window is within the time period, wherein the second time window and the first time window do not overlap; and providing a query response to the data query the query response comprising at least a portion of the first data bucket and at least a portion of the second data bucket. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory machine-readable storage medium comprising instructions, which when implemented by one or more machines, cause the one or more machines to perform operations comprising:
-
reading data from a write data structure in a database; aggregating, using one or more hardware processors, the data to generate a plurality of data buckets associated with a corresponding plurality of time windows, wherein a first data bucket of the plurality of data buckets corresponds to a first time window of the plurality of time windows, and a second data bucket of the plurality of data buckets corresponds to a second time window of the plurality of time windows, the second time window being shorter than the first time window; and storing the plurality of data bucket in a read data structure in the database; receiving a time constraint associated with a data query to the database, the time constraint describing a time period; selecting the first data bucket for responding to the data query, wherein selecting the first data bucket comprises; determining that at least a portion of the first data bucket satisfies the data query; and determining that the first time window is a longest time window of the plurality of time windows that is within the time period; selecting the second data bucket for responding to the data query, wherein selecting the second data bucket comprises; determining that at least a portion of the second data bucket satisfies the data query; and determining that the second time window is within the time period, wherein the second time window and the first time window do not overlap; and providing a query response to the data query, the query response comprising at least a portion of the first data bucket and at least a portion of the second data bucket. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification