IP Library Granted Patent US 11,269,775
Granted Patent B2
US 11,269,775 · App. 16/691,829 · Granted Mar 8, 2022

Responsive cache to improve latency in service-based architectures

Inventors: Rouven Krebs (Römerberg, DE); Steffen Koenig (Heidelberg, DE)
Assignee: SAP SE
G06F12/0862G06F2212/6022
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,269,775
App. No.
16/691,829
Granted
Mar 8, 2022
Kind
B2
Abstract

Methods, systems, and computer-readable storage media for receiving, by a service, a request for data, transmitting, by the service, a data request to a data source, determining, by the service, that usable data is stored within a fuzzy cache of the service, and in response: calculating supplemental data based on the usable data, and transmitting an initial response including the supplemental data, the initial response being displayed at a client that had transmitted the request for data, and receiving, by the service and from the data source, requested data in response to the request for data, and transmitting, by the service, an updated response including the requested data.

Claims (49)

1. A computer-implemented method for responding to requests for data, the method being executed by one or more processors and comprising:

receiving, by a service, a request for data;

transmitting, by the service, a data request to a data source, the request comprising data indicative of a component of a software system and data indicative of a cost of executing the component over a timeframe;

determining, by the service, that usable data is stored within a fuzzy cache of the service based on the request, and in response:

calculating supplemental data based on the usable data, the supplemental data being indicative of an estimated cost of executing the component over the timeframe, and

transmitting an initial response comprising the supplemental data, the initial response being displayed at a client that had transmitted the request for data;

receiving, by the service and from the data source, requested data in response to the request for data, the requested data being indicative of an actual cost of executing the component over the timeframe; and

transmitting, by the service, an updated response comprising the requested data to replace the supplemental data with the requested data.

2. The method of claim 1 , further comprising one or more of:

comparing an expected accuracy of the supplemental data to a threshold accuracy, wherein calculating the supplemental data is performed in response to the expected accuracy exceeding the threshold accuracy; and

comparing an expected response time to a threshold response time, wherein calculating the supplemental data is performed in response to the expected response exceeding the threshold response time.

3. The method of claim 1 , wherein the supplemental data is less accurate than the requested data.

4. The method of claim 1 , wherein a first time lapses between receiving the request for data and transmitting the initial response and a second time lapses between receiving the request for data and transmitting the updated response, the first time being less than the second time.

5. The method of claim 1 , wherein transmitting, by the service, the data request is executed in response to determining that data responsive to the request for data is absent from a cache of the service provider.

6. The method of claim 1 , wherein the supplemental data is calculated based on interpolation of at least a portion of the usable data.

7. The method of claim 1 , wherein the fuzzy cache comprises one or more of a data preparator that calculates the supplemental data, and a data reader that determines one or more of whether additional data is required from the source, and a type of data to read from the data source to optimize cache hit rate, accuracy rate, and memory consumption.

8. A non-transitory computer-readable storage medium coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations for responding to requests for data, the operations comprising:

receiving, by a service, a request for data, the request comprising data indicative of a component of a software system and data indicative of a cost of executing the component over a timeframe;

transmitting, by the service, a data request to a data source;

determining, by the service, that usable data is stored within a fuzzy cache of the service based on the request, and in response:

calculating supplemental data based on the usable data, the supplemental data being indicative of an estimated cost of executing the component over the timeframe, and

transmitting an initial response comprising the supplemental data, the initial response being displayed at a client that had transmitted the request for data;

receiving, by the service and from the data source, requested data in response to the request for data, the requested data being indicative of an actual cost of executing the component over the timeframe; and

transmitting, by the service, an updated response comprising the requested data to replace the supplemental data with the requested data.

9. The computer-readable storage medium of claim 8 , wherein operations further comprise one or more of:

comparing an expected accuracy of the supplemental data to a threshold accuracy, wherein calculating the supplemental data is performed in response to the expected accuracy exceeding the threshold accuracy; and

comparing an expected response time to a threshold response time, wherein calculating the supplemental data is performed in response to the expected response exceeding the threshold response time.

10. The computer-readable storage medium of claim 8 , wherein the supplemental data is less accurate than the requested data.

11. The computer-readable storage medium of claim 8 , wherein a first time lapses between receiving the request for data and transmitting the initial response and a second time lapses between receiving the request for data and transmitting the updated response, the first time being less than the second time.

12. The computer-readable storage medium of claim 8 , wherein transmitting, by the service, the data request is executed in response to determining that data responsive to the request for data is absent from a cache of the service provider.

13. The computer-readable storage medium of claim 8 , wherein the supplemental data is calculated based on interpolation of at least a portion of the usable data.

14. The computer-readable storage medium of claim 8 , wherein the fuzzy cache comprises one or more of a data preparator that calculates the supplemental data, and a data reader that determines one or more of whether additional data is required from the source, and a type of data to read from the data source to optimize cache hit rate, accuracy rate, and memory consumption.

15. A system, comprising:

a computing device; and

a computer-readable storage device coupled to the computing device and having instructions stored thereon which, when executed by the computing device, cause the computing device to perform operations for natural language explanations for responding to requests for data, the operations comprising:

receiving, by a service, a request for data, the request comprising data indicative of a component of a software system and data indicative of a cost of executing the component over a timeframe;

transmitting, by the service, a data request to a data source;

determining, by the service, that usable data is stored within a fuzzy cache of the service based on the request, and in response:

calculating supplemental data based on the usable data, the supplemental data being indicative of an estimated cost of executing the component over the timeframe, and

transmitting an initial response comprising the supplemental data, the initial response being displayed at a client that had transmitted the request for data;

receiving, by the service and from the data source, requested data in response to the request for data, the requested data being indicative of an actual cost of executing the component over the timeframe; and

transmitting, by the service, an updated response comprising the requested data to replace the supplemental data with the requested data.

16. The system of claim 15 , wherein operations further comprise one or more of:

comparing an expected accuracy of the supplemental data to a threshold accuracy, wherein calculating the supplemental data is performed in response to the expected accuracy exceeding the threshold accuracy; and

comparing an expected response time to a threshold response time, wherein calculating the supplemental data is performed in response to the expected response exceeding the threshold response time.

17. The system of claim 15 , wherein the supplemental data is less accurate than the requested data.

18. The system of claim 15 , wherein a first time lapses between receiving the request for data and transmitting the initial response and a second time lapses between receiving the request for data and transmitting the updated response, the first time being less than the second time.

19. The system of claim 15 , wherein transmitting, by the service, the data request is executed in response to determining that data responsive to the request for data is absent from a cache of the service provider.

20. The system of claim 15 , wherein the supplemental data is calculated based on interpolation of at least a portion of the usable data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2019
From: KREBS, ROUVEN; KOENIG, STEFFEN
To: SAP SE
Reel/Frame 051085/0072 →
Continuity (1)
Related Publication 20210157731A1 · May 27, 2021
Cited By (1)
US 12,468,681