IP Library Granted Patent US 10,275,508
Granted Patent B2
US 10,275,508 · App. 14/946,757 · Granted Apr 30, 2019

Query hints for caching and replication

Inventors: Christian Bensberg (Heidelberg, DE); Norman May (Karlsruhe, DE); Alexander Boehm (Sandhausen, DE); Juchang Lee (Seoul, KR); Sung Heun Wi (Gyeonggi-do, KR); Jeong Ae Han (Seoul, KR); Ki Hong Kim (Seoul, KR); Kyu Hwan Kim (Walldorf, DE); Chul Won Lee (Walldorf, DE); Andreas Kemmler (Boennigheim, DE); Christoph Glania (Mühlhausen, DE); Armin Risch (Hockenheim, DE); Kai Morich (Hockenheim, DE)
Assignee: SAP SE
G06F17/30578G06F17/3048
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 10,275,508
App. No.
14/946,757
Granted
Apr 30, 2019
Kind
B2
Abstract

A method may include receiving a query for data to be provided by a database server, wherein the query includes an indication of a maximum lag. The method may further include determining whether a hint is available to apply to the query, wherein the hint affects an execution of the query. When no hint is available, a baseline database server may be selected to be the database server. When the hint is available, a replication server or a cache server may be selected to be the database server based on the hint and the maximum lag. The query may be processed at the selected database server.

Claims (37)

1. A method comprising:

receiving a query for data to be provided by a database server, wherein the query includes an indication of a maximum lag;

determining whether a hint, at a database management system, is available to apply to the query having the maximum lag, wherein the hint affects an execution of the query;

selecting, when no hint is available, a baseline database server to be the database server;

selecting, when the hint is available, a replication server or a cache server to be the database server based on the hint and the maximum lag; and

processing the query at the selected database server.

2. The method of claim 1 , wherein the selecting is based at least in part on the lag of the database server with the hint applied being less than or equal to the maximum lag.

3. The method of claim 1 , wherein the hint includes an indication of a class, wherein the class is one of a plurality of classes associated with the hint, and wherein when the class identifies a lag provided using the hint as long, short, or a quantitative value of time.

4. The method of claim 3 , wherein when the hint includes the indication of the class short, the hint causes the selected database to have been produced by asynchronous table replication, wherein asynchronous table replication causes a lag of less than a few seconds.

5. The method of claim 4 , wherein asynchronous table replication replicates one or more tables from the baseline database.

6. The method of claim 3 , wherein when the hint includes the indication of the class long, the hint causes the selected database to have been produced as a cache, wherein the database produced as a cache has a lag between a few seconds and sixty minutes.

7. The method of claim 6 , wherein the cache is an aggregation of tables from the baseline database.

8. A non-transitory computer readable medium containing executable instructions, that when executed by at least one processor perform operations comprising:

receiving a query for data to be provided by a database server, wherein the query includes an indication of a maximum lag;

determining whether a hint, at a database management system, is available to apply to the query having the maximum lag, wherein the hint affects an execution of the query;

selecting, when no hint is available, a baseline database server to be the database server;

selecting, when the hint is available, a replication server or a cache server to be the database server based on the hint and the maximum lag; and

processing the query at the selected database server.

9. The non-transitory computer readable medium of claim 8 , wherein the selecting is based at least in part on the lag of the database server with the hint applied being less than or equal to the maximum lag.

10. The non-transitory computer readable medium of claim 8 , wherein the hint includes an indication of a class, wherein the class is one of a plurality of classes associated with the hint, and wherein when the class identifies a lag provided using the hint as long, short, or a quantitative value of time.

11. The method of claim 10 , wherein when the hint includes the indication of the class short, the hint causes the selected database to have been produced by asynchronous table replication, wherein asynchronous table replication causes a lag of less than a few seconds.

12. The method of claim 11 , wherein asynchronous table replication replicates one or more tables from the baseline database.

13. The method of claim 10 , wherein when the hint includes the indication of the class long, the hint causes the selected database to have been produced as a cache, wherein the database produced as a cache has a lag between a few seconds and sixty minutes.

14. The method of claim 13 , wherein the cache is an aggregation of tables from the baseline database.

15. A system comprising:

at least one processor;

at least one memory including executable code, wherein the at least one processor, the at least one memory, and the executable code cause operations comprising:

receiving a query for data to be provided by a database server, wherein the query includes an indication of a maximum lag;

determining whether a hint, at a database management system, is available to apply to the query having the maximum lag, wherein the hint affects an execution of the query;

selecting, when no hint is available, a baseline database server to be the database server;

selecting, when the hint is available, a replication server or a cache server to be the database server based on the hint and the maximum lag; and

processing the query at the selected database server.

16. The system of claim 15 , wherein the selecting is based at least in part on the lag of the database server with the hint applied being less than or equal to the maximum lag.

17. The system of claim 15 , wherein the hint includes an indication of a class, wherein the class is one of a plurality of classes associated with the hint, and wherein when the class identifies a lag provided using the hint as long, short, or a quantitative value of time.

18. The method of claim 17 , wherein when the hint includes the indication of the class short, the hint causes the selected database to have been produced by asynchronous table replication, wherein asynchronous table replication causes a lag of less than a few seconds.

19. The method of claim 18 , wherein asynchronous table replication replicates one or more tables from the baseline database.

20. The method of claim 17 , wherein when the hint includes the indication of the class long, the hint causes the selected database to have been produced as a cache, wherein the database produced as a cache has a lag between a few seconds and sixty minutes, wherein the cache is an aggregation of tables from the baseline database.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 23, 2015
From: BENSBERG, CHRISTIAN; MAY, NORMAN; BOEHM, ALEXANDER; LEE, JUCHANG; WI, SUNG HEUN; HAN, JEONG AE; KIM, KI HONG; KIM, KYU HWAN; LEE, CHUL WON; KEMMLER, ANDREAS; GLANIA, CHRISTOPH; RISCH, ARMIN; MORICH, KAI
To: SAP SE
Reel/Frame 037117/0097 →
Continuity (1)
Related Publication 20170147671A1 · May 25, 2017
Cited By (2)
US 12,579,110 US 12,632,422