Optimizing search for insert-only databases and write-once data storage
First Claim
Patent Images
1. A method comprising:
- performing, by at least one processor, a search of an insert-only database using a search string to obtain a result set having both valid and invalid entries, each entry in the insert-only database having an associated timestamp, the valid entries having a most recent timestamp and the invalid entries each having an earlier timestamp than a subsequent corresponding valid entry, wherein modification of at least one field in an entry in the insert-only database results in a corresponding entry being saved in a secondary data storage that comprises information characterizing the entry in the insert-only database including the timestamp for the entry;
scanning, by at least one processor, primary key fields of entries in the secondary data storage corresponding to the entries in the result set to determine which entries are valid based on their timestamps; and
removing, by at least one processor, invalid entries from the result set to result in a modified result set.
2 Assignments
0 Petitions
Accused Products
Abstract
A search of an insert-only database is performed using a search string in a non-key field to obtain a result set having both valid and invalid entries. Each entry includes a primary key field and the primary key field is subsequently scanned for entries in the result set to determine which entries are valid. Thereafter, invalid entries are removed from the result set to result in a modified result set. Such removal can be based, for example, on the timestamp of the respective entries. In some implementations, a secondary persistence is utilized. Related apparatus, systems, techniques and articles are also described.
-
Citations
20 Claims
-
1. A method comprising:
-
performing, by at least one processor, a search of an insert-only database using a search string to obtain a result set having both valid and invalid entries, each entry in the insert-only database having an associated timestamp, the valid entries having a most recent timestamp and the invalid entries each having an earlier timestamp than a subsequent corresponding valid entry, wherein modification of at least one field in an entry in the insert-only database results in a corresponding entry being saved in a secondary data storage that comprises information characterizing the entry in the insert-only database including the timestamp for the entry; scanning, by at least one processor, primary key fields of entries in the secondary data storage corresponding to the entries in the result set to determine which entries are valid based on their timestamps; and removing, by at least one processor, invalid entries from the result set to result in a modified result set. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for implementation by one or more data processors comprising:
-
performing, by at least one processor, a search of a write-once primary data storage using a search string to obtain a result set having both valid and invalid entries, each entry in the primary data storage having an associated timestamp, the valid entries having a most recent timestamp and the invalid entries each having an earlier timestamp than a subsequent corresponding valid entry, wherein modification of at least one field in an entry in the primary data storage results in a corresponding entry being saved in a secondary data storage that comprises information characterizing the entry in the primary data storage including the timestamp for the entry; scanning, by at least one processor, primary key fields of entries in the secondary data storage corresponding to the entries in the result set to determine which entries are valid based on their timestamps; and removing, by at least one processor, invalid entries from the result set to result in a modified result set. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer program product storing instructions, which when executed by one or more data processors, result in operations comprising:
-
performing, by at least one processor, a search of an insert-only database using a search string to obtain a result set having both valid and invalid entries, each entry in the insert-only database having an associated timestamp, the valid entries having a most recent timestamp and the invalid entries each having an earlier timestamp than a subsequent corresponding valid entry, wherein modification of at least one field in an entry in the insert-only database results in a corresponding entry being saved in a secondary data storage that comprises information characterizing the entry in the insert-only database including the timestamp for the entry; scanning, by at least one processor, primary key fields of entries in the secondary data storage corresponding to the entries in the result set to determine which entries are valid based on their timestamps; and removing, by at least one processor, invalid entries from the result set to result in a modified result set. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification