- Patent Number:
12265,537
- Appl. No:
18/354990
- Application Filed:
July 19, 2023
- نبذة مختصرة :
Systems, methods, and articles of manufacture, including computer program products, provide a system including at least one data processor and at least one memory storing instructions which, when executed by the at least one data processor, cause operations comprising: generating, by a database execution engine, a query plan including a plurality of operators; inserting, by the database execution engine, an enforce compilation operator into the query plan that includes the plurality of operators, the plurality of operators comprising a first operator, the enforce compilation operator, and a second operator; executing at least the first operator of the query plan; in response to executing the first operator, evaluating, by the database execution engine, an output of the first operator to determine whether a condition is satisfied; and in response to the condition being satisfied, triggering, by the database execution engine, a just-in-time compilation of the second operator.
- Inventors:
SAP SE (Walldorf, DE)
- Assignees:
SAP SE (Walldorf, DE)
- Claim:
1. A system, comprising: at least one data processor; and at least one memory storing instructions which, when executed by the at least one data processor, cause operations comprising: generating, by a database execution engine, a query plan including a plurality of operators; inserting, by the database execution engine, an enforce compilation operator into the query plan that includes the plurality of operators, the plurality of operators comprising a first operator, the enforce compilation operator, and a second operator; executing at least the first operator of the query plan; in response to executing the first operator, evaluating, by the database execution engine, an output of the first operator to determine whether a condition is satisfied; and in response to the condition being satisfied, triggering, by the database execution engine, a just-in-time compilation of the second operator.
- Claim:
2. The system of claim 1 , further comprising; in response to the condition not being satisfied, inhibiting the triggering of the second operator, such that the second operator is not forced into the just-in-time compilation.
- Claim:
3. The system of claim 1 , further comprising: receiving, at the database execution engine, a query.
- Claim:
4. The system of claim 3 , wherein in response to receiving the query, the query plan is generated.
- Claim:
5. The system of claim 1 , wherein the enforce compilation operator forces the just-in-time compilation of the second operator into machine code.
- Claim:
6. The system of claim 1 , wherein the first operator comprises a first executable operator and the second operator comprises a second executable operator.
- Claim:
7. The system of claim 1 , wherein the database execution engine inserts the enforce compilation operator into the query plan to optimize execution of the query plan.
- Claim:
8. The system of claim 1 , wherein the condition is satisfied in response to a threshold value being exceeded.
- Claim:
9. The system of claim 8 , wherein in response to the threshold value being exceeded, the database execution engine triggers the just-in-time compilation of the second operator.
- Claim:
10. The system of claim 8 , wherein in response to the threshold value not being exceeded, the database execution engine inhibits the triggering of the second operator, such that the second operator is not forced into the just-in-time compilation but rather uses interpretive code for the second operator.
- Claim:
11. The system of claim 1 , wherein the evaluating, by the database execution engine, the output of the first operator to determine whether the condition is satisfied is in response to a first execution of the query plan and the first operator.
- Claim:
12. The system of claim 1 , wherein the inserting the enforce compilation operator further comprises forking the output of the first operator to the enforce compilation operator and the second operator.
- Claim:
13. A method comprising: generating, by a database execution engine, a query plan including a plurality of operators; inserting, by the database execution engine, an enforce compilation operator into the query plan that includes the plurality of operators, the plurality of operators comprising a first operator, the enforce compilation operator, and a second operator; executing at least the first operator of the query plan; in response to executing the first operator, evaluating, by the database execution engine, an output of the first operator to determine whether a condition is satisfied; and in response to the condition being satisfied, triggering, by the database execution engine, a just-in-time compilation of the second operator.
- Claim:
14. The method of claim 13 , further comprising; in response to the condition not being satisfied, inhibiting the triggering of the second operator, such that the second operator is not forced into the just-in-time compilation.
- Claim:
15. The method of claim 13 , further comprising: receiving, at the database execution engine, a query.
- Claim:
16. The method of claim 15 , wherein in response to receiving the query, the query plan is generated.
- Claim:
17. The method of claim 13 , wherein the enforce compilation operator forces the just-in-time compilation of the second operator into machine code.
- Claim:
18. The method of claim 13 , wherein the first operator comprises a first executable operator and the second operator comprises a second executable operator.
- Claim:
19. The method of claim 13 , wherein the database execution engine inserts the enforce compilation operator into the query plan to optimize execution of the query plan.
- Claim:
20. A non-transitory computer-readable storage medium storing instructions which, when executed by at least one data processor, cause operations comprising: generating, by a database execution engine, a query plan including a plurality of operators; inserting, by the database execution engine, an enforce compilation operator into the query plan that includes the plurality of operators, the plurality of operators comprising a first operator, the enforce compilation operator, and a second operator; executing at least the first operator of the query plan; in response to executing the first operator, evaluating, by the database execution engine, an output of the first operator to determine whether a condition is satisfied; and in response to the condition being satisfied, triggering, by the database execution engine, a just-in-time compilation of the second operator.
- Patent References Cited:
2014/0082597 March 2014 Chafi
2015/0212838 July 2015 Pirvu
2018/0089268 March 2018 Lee
2020/0311084 October 2020 Merker
2021/0133193 May 2021 McConnell
2023/0004563 January 2023 Zhang
2023/0236907 July 2023 Gaburov
2024/0330029 October 2024 Gadd
- Other References:
Ray Odaira et al., “Selective Optimization of Locks by Runtime Statistics and Just-in-time Compilation”, IEEE, pp. 1-6 (Year: 2003). cited by examiner
- Primary Examiner:
Bibbee, Jared M
- Attorney, Agent or Firm:
Mintz Levin Cohn Ferris Glovsky and Popeo, P.C.
- الرقم المعرف:
edspgr.12265537
No Comments.