Time-addressed database management system
First Claim
1. A method of constructing a database for a database application, said method comprising:
- for each of a plurality of transactions, receiving input from a user via the database application;
constructing a corresponding record that embodies the received input for that transaction;
appending a time address to the corresponding record for that transaction, wherein the time address identifies when the corresponding transaction was completed; and
storing the corresponding record for that transaction in a non-volatile data storage, wherein the time address for that corresponding record is permanently associated with that stored corresponding record and wherein the database application during normal operation prevents any overwriting of that stored corresponding record with any other data.
0 Assignments
0 Petitions
Accused Products
Abstract
A method of constructing a database for a database application, the method involving for each of a plurality of transactions, receiving input from a user via the database application; constructing a corresponding record that embodies the received input for that transaction; appending a time address to the corresponding record for that transaction, wherein the time address identifies when the corresponding transaction was completed; and storing the corresponding record for that transaction in a non-volatile data storage, wherein the time address for that corresponding record is permanently associated with that stored corresponding record and wherein the database application during normal operation prevents any overwriting of that stored corresponding record with any other record.
33 Citations
12 Claims
-
1. A method of constructing a database for a database application, said method comprising:
-
for each of a plurality of transactions, receiving input from a user via the database application;
constructing a corresponding record that embodies the received input for that transaction;
appending a time address to the corresponding record for that transaction, wherein the time address identifies when the corresponding transaction was completed; and
storing the corresponding record for that transaction in a non-volatile data storage, wherein the time address for that corresponding record is permanently associated with that stored corresponding record and wherein the database application during normal operation prevents any overwriting of that stored corresponding record with any other data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A database method comprising:
-
storing a plurality of records in a data-storage, wherein each of the records of the plurality of records has a common structure that is characterized at its highest level by a key;
value pair map in which the values are structures rather than scalars or primitives, said structures for containing one or more sub-records within the record; and
generating and maintaining a plurality of drill-down indexes in volatile memory, wherein each of said plurality of drill-down indexes is based on a corresponding multipart key and is for extracting different information from the sub-records contained with the records of said plurality of records. - View Dependent Claims (10)
-
-
11. A method of maintaining summary information for a database application that manages a database of records, said method comprising:
-
constructing an index in volatile memory for a key having associated therewith one or more quantity-related attributes that are found in the database records, wherein for each different instance of the key the index maintains a summary bucket that contains a cumulative value that is the sum of all values for the one or more quantity-related attributes associated with that instance of the key; and
automatically updating the summary buckets in the index in volatile memory each time a new record is added to the database. - View Dependent Claims (12)
-
Specification