Data store with lock-free stateless paging capability
First Claim
1. A method for limiting the number of results returned by a data store containing data items in response to a query, comprising the steps of:
- receiving a query comprising one or more query conditions;
determining if said query further comprises a marker;
returning a page of results comprising a subset of said data items within said data store that satisfy said query conditions; and
providinig with said page of results an updated marker;
wherein if said query further comprises said marker, said marker indicates an extent of a previous subset returned in response to a, previous query comprising said query conditions; and
wherein said updated marker indicates an extent of a union of said previous subset and said subset.
3 Assignments
0 Petitions
Accused Products
Abstract
Disclosed are a method and apparatus for limiting the number of results returned by a data store in response to a query. Upon receiving an initial query, the data store returns a page of results that includes a subset of the data items within the data store satisfying the conditions of the query. The data store also provides a marker indicating the extent of the set of data items. If a subsequent query that requests additional results which satisfy the same query conditions and that includes the marker is received, the data store returns a page of results that includes a subset of data items that are disjoint from the initial subset, and provides an updated marker which indicates the extent of the union of the initial and subsequent subsets. If still further results are desired from the data store, an additional query containing the updated marker may be submitted.
106 Citations
45 Claims
-
1. A method for limiting the number of results returned by a data store containing data items in response to a query, comprising the steps of:
-
receiving a query comprising one or more query conditions;
determining if said query further comprises a marker;
returning a page of results comprising a subset of said data items within said data store that satisfy said query conditions; and
providinig with said page of results an updated marker;
wherein if said query further comprises said marker, said marker indicates an extent of a previous subset returned in response to a, previous query comprising said query conditions; and
wherein said updated marker indicates an extent of a union of said previous subset and said subset. - 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. A data store limiting the number of results returned in response to a query, comprising:
-
data items;
means for receiving a query comprising one or more query conditions;
means for determining if said query further comprises a marker;
means for returning a page of results comprising a subset of said data items within said data store that satisfy said query conditions; and
means for providing with said page of results an updated marker;
wherein if said query further comprises said marker, said marker indicates an extent of a previous subset returned in response to a previous query comprising said query conditions; and
wherein said updated marker indicates an extent of a union of said previous subset and said subset. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38)
-
-
39. A method for limiting the number of results returned by a data store containing data items in response to a query, comprising the steps of:
-
receiving a query comprising one or more query conditions, returning a page of results comprising a subset of said data items within said data store that satisfy said query conditions; and
providing with said page of results a marker;
wherein said marker indicates an extent of said subset. - View Dependent Claims (40)
-
-
41. A method for limiting the number of data items returned by a data store containing data items in response to at least one query, comprising the steps of:
-
receiving an initial query comprising one or more query conditions;
returning an initial page of results comprising and initial subset of said data items within said data store that satisfy said query conditions; and
,providing with said initial page of results a marker that indicates the extent of said initial subset; and
,if additional results are desired from said data store;
receiving a subsequent query comprising said query conditions and said marker;
returning a subsequent page of results comprising a subsequent subset of said data items within said data store that satisfy said query conditions, said subsequent subset being disjoint from said initial subset and providing with said subsequent page of results an updated marker that indicates an extent of a union of said initial subset and said subsequent subset;
wherein one or more additional queries may be submitted with said updated marker if additional results are desired from said data store.
-
-
42. A method for limiting the number of results returned by a data store containing data items in response to a query having query conditions, comprising the steps of:
-
upon receiving an initial query, said data store returning a page of results that includes an initial subset of said data items within said data store that satisfy said query conditions;
said data store providing a marker that indicates the extent of said initial subset of data items;
when a subsequent query is received that requests additional results that satisfy said initial query conditions and that includes said marker, said data store returning a page of results that includes a subsequent subset of data items that is disjoint from said initial subset; and
said data store providing an updated marker indicating an extent of a union of said initial and subsequent subsets.
-
-
43. A distributed data store, comprising:
-
means for paging results provided by said data store in response to a search; and
means for limiting a number of results returned by each node within said data store during said search;
wherein additional operations with said data store are allowed to proceed between pages during said search. - View Dependent Claims (44)
-
-
45. A distributed data store, comprising:
-
means for limiting computation required per node per page of results returned in response to a search operation at said data store without storing a search operation state between successive pages and means for interleaving of any of insertion, deletion and search operations at said data store.
-
Specification