Indexing data updates associated with an electronic catalog system
First Claim
Patent Images
1. A system for providing a response to a query regarding updates to an electronic catalog, the system comprising:
- a live data store that accepts updates to items of the electronic catalog,wherein items of the electronic catalog are associated with one or more item attributes,wherein the updates to the items of the electronic catalog comprise updates to an item attribute, and wherein individual updates are indexed in a dynamic index according to an update key and an associated update value;
an archive data store that stores the updates accepted from the live data store in objects, wherein individual objects comprise a plurality of updates and wherein individual objects are indexed in a static index according to an object key and an associated object value;
a computing device in communication with the live data store and the archive data store, the computing device comprising a hardware processor that;
in response to receiving a query regarding updates to the electronic catalog from a requestor, wherein the query comprises a query key, determines whether the query key matches an update key in the dynamic index;
in response to determining that the query key does not match an update key in the dynamic index, determines whether the query key matches an object key in the static index; and
provides a response to the received query based on one of a matched update key or a matched object key, wherein the response includes information corresponding to the matched update key or a pointer to an object that corresponds to the matched object key.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are provided for efficiently indexing archived objects in an archive data store to allow for efficient and quick access to the archived objects. The systems and methods provided also allow alleviate the strain on a live data store and enable a requester wishing to retrieve updates to do so without knowledge of the location of the stored update on a live or archive data store.
29 Citations
29 Claims
-
1. A system for providing a response to a query regarding updates to an electronic catalog, the system comprising:
-
a live data store that accepts updates to items of the electronic catalog, wherein items of the electronic catalog are associated with one or more item attributes, wherein the updates to the items of the electronic catalog comprise updates to an item attribute, and wherein individual updates are indexed in a dynamic index according to an update key and an associated update value; an archive data store that stores the updates accepted from the live data store in objects, wherein individual objects comprise a plurality of updates and wherein individual objects are indexed in a static index according to an object key and an associated object value; a computing device in communication with the live data store and the archive data store, the computing device comprising a hardware processor that; in response to receiving a query regarding updates to the electronic catalog from a requestor, wherein the query comprises a query key, determines whether the query key matches an update key in the dynamic index; in response to determining that the query key does not match an update key in the dynamic index, determines whether the query key matches an object key in the static index; and provides a response to the received query based on one of a matched update key or a matched object key, wherein the response includes information corresponding to the matched update key or a pointer to an object that corresponds to the matched object key. - View Dependent Claims (2, 3)
-
-
4. A system for collating values from two indices in response to a query regarding updates to items of an electronic catalog, wherein items of the electronic catalog are associated with one or more item attributes, wherein the updates to the items of the electronic catalog comprise updates to an item attribute, the system comprising:
-
a first data store that receives updates, wherein the updates are indexed in a dynamic index in accordance with a first key and a first value associated with individual received updates; a second data store that stores the received updates in collections of records, wherein the collections of records are indexed in a static index in accordance with a second key and second value associated with individual collections; a computing device in communication with the first and second data stores, the computing device comprising a hardware processor that; in response to receiving a query regarding updates to the electronic catalog from a requestor, wherein the query comprises a query key, determines whether the query key matches at least one of the first key in the dynamic index, or the second key in the static index; and provides a response comprising at least one of the first value associated with a matched first key or the second value associated with a matched second key, wherein the second value corresponds to a pointer to a collection of records stored in the second data store and wherein the collection of records is indexed in accordance with the matched second key. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer-implemented method to generate a static index of objects, wherein individual objects comprise a plurality of updates, and the objects are stored in an archive data store, the computer-implemented method comprising:
-
under control of one or more computing devices, for individual query keys, querying the archive data store for updates associated with the query key, wherein the updates comprise a change associated with an item of an electronic catalog; in response to querying the archive data store, receiving updates stored in the archive data store that are associated with the query key; aggregating the received updates into an object; associating the object with the query key in the static index, wherein associating the object with the query key comprises associating a pointer to the object with the query key and wherein the pointer is included in a response to a second query matching the query key; and in response to a request for data associated with an electronic catalog, collating the static index with a dynamic index of objects stored in a live data store to retrieve the requested data. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A computer-readable, non-transitory medium having computer-executable modules for providing a response to a requestor query regarding updates to an electronic catalog, the computer-executable modules comprising:
-
an index collating module in communication with a live data store that accepts updates to items of the electronic catalog, wherein the items of the electronic catalog are associated with one or more item attributes, wherein the updates to the items of the electronic catalog comprise updates to an item attribute, wherein individual updates are indexed in a dynamic index according to an update key and an associated update value, the index collating module further in communication with an archive data store that stores the updates accepted from the live data store in objects, wherein individual objects comprise a plurality of updates, and wherein individual objects are indexed in a static index according to an object key and an associated object value, wherein the index collating module; in response to receiving a query regarding updates to the electronic catalog from a requestor, wherein the query comprises a query key, determines whether the query key matches an object key in the static index; in response to determining that the query key does not match an object key in the static index, determines whether the query key matches an update key in the dynamic index; and provides a response to the received query based on one of a matched object key or a matched update key, wherein the response includes a pointer to an object that corresponds to the matched object key or information corresponding to the matched update key. - View Dependent Claims (28, 29)
-
Specification