Batching data requests and responses
First Claim
1. One or more non-transitory machine-readable storage media having machine-executable instructions, which when executed perform operations, the operations comprising:
- receiving a first request for a first data item from a first requestor;
maintaining first mapping data including associating the first requestor with the first data item;
receiving a second request for a second data item from a second requestor;
maintaining second mapping data including associating the second requestor with the second data item;
sending a batch request that includes a plurality of requests to a data-providing entity, the batch request including requests corresponding to the first request and the second request;
receiving response information from the data-providing entity in response to the batch request, including first response information corresponding to the first data item and second response information corresponding to the second data item;
accessing the first mapping data to return a first response corresponding to the first response information to the first requestor;
accessing the second mapping data to return a second response corresponding to the second response information to the second requester; and
wherein the first request for the first data item is part of a multiple data item request that further includes a request for another data item, and wherein the accessing the first mapping data to return the first response corresponding to the first response information to the first requestor comprises including the first response as part of a batch response to the first requestor.
1 Assignment
0 Petitions
Accused Products
Abstract
The described technology is generally directed towards batching two or more data requests into a batch request that is sent to a data-providing entity such as a client data access layer coupled to a data service. Described is maintaining a mapping of the requests to requesting entities so that the responses to a batched request, which may be separately streamed, may be assembled into a batch response to the requesting entity. Also described is multiplexing a plurality of requests for the same data item into a single request, which may be added to a batch request, and de-multiplexing the single response into separate responses to each requesting entity.
57 Citations
20 Claims
-
1. One or more non-transitory machine-readable storage media having machine-executable instructions, which when executed perform operations, the operations comprising:
-
receiving a first request for a first data item from a first requestor; maintaining first mapping data including associating the first requestor with the first data item; receiving a second request for a second data item from a second requestor; maintaining second mapping data including associating the second requestor with the second data item; sending a batch request that includes a plurality of requests to a data-providing entity, the batch request including requests corresponding to the first request and the second request; receiving response information from the data-providing entity in response to the batch request, including first response information corresponding to the first data item and second response information corresponding to the second data item; accessing the first mapping data to return a first response corresponding to the first response information to the first requestor; accessing the second mapping data to return a second response corresponding to the second response information to the second requester; and wherein the first request for the first data item is part of a multiple data item request that further includes a request for another data item, and wherein the accessing the first mapping data to return the first response corresponding to the first response information to the first requestor comprises including the first response as part of a batch response to the first requestor. - View Dependent Claims (2, 3)
-
-
4. A method, comprising:
-
receiving a first request for a first data item from a first requestor; maintaining first mapping data, including associating the first requestor with the first data item; receiving a second request for a second data item from a second requestor, wherein the second request comprises a multiple data item request that includes a request for the second data item and a request for the first data item; maintaining second mapping data including associating the second requestor with the second data item and associating the second requestor with the first data item; sending a batch request comprising a plurality of requests to a data-providing entity, the batch request comprising requests corresponding to the first request and the second request, and wherein the batch request comprises only one request for the first data item; receiving response information from the data-providing entity in response to the batch request, including first response information corresponding to the first data item and second response information corresponding to the second data item; accessing the first mapping data to return a first response corresponding to the first response information to the first requestor; and accessing the second mapping data to return a second response to the multiple data item request that corresponds to the second response information to the second requestor, comprising returning the second response that includes the first response information and the second response information to the second requestor. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11)
-
-
12. A system, comprising:
-
a processor; and a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations, the operations comprising; receiving a first request from a first requestor, the first request comprising a multiple data item request requesting at least one data item and another data item; maintaining first mapping data, comprising associating the first requestor with the at least one data item and the other data item; receiving a second request for a second data item from a second requestor; maintaining second mapping data, comprising associating the second requestor with the second data item; sending a batch request comprising a plurality of requests to a data-providing entity, the batch request comprising requests corresponding to the first request and the second request; receiving response information from the data-providing entity in response to the batch request, including first response information corresponding to the first request and second response information corresponding to the second request; accessing the first mapping data to return a first response as a batch response corresponding to the first response information to the first requestor; and accessing the second mapping data to return a second response to the multiple data item request corresponding to the second response information to the second requestor. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
Specification