IP Library Granted Patent US 12,293,221
Granted Patent B2
US 12,293,221 · App. 17/557,147 · Granted May 6, 2025

Cross-process dispatch service in hybrid cloud scenarios

Inventors: Le Zhang (Xi'an, CN); Daping Wang (Xi'an, CN); Haoxing Hou (Xi'an, CN); Moritz Semler (Spechbach, DE); Yu Yang (Xi'an, CN)
Assignee: SAP SE
G06F9/4881G06F9/5072
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 12,293,221
App. No.
17/557,147
Granted
May 6, 2025
Kind
B2
Abstract

Methods, systems, and computer-readable storage media for receiving, by a cross-process scheduling engine executed within a cloud platform, work scenario metadata and sensitivity metadata, generating, by the cross-process scheduling engine, a lineage graph representing relationships between one or more of data and processes to be executed for a work scenario represented by the work scenario metadata, defining, by the cross-process scheduling engine, a set of tile segments for the work scenario based on the lineage graph and the sensitivity metadata, dispatching, by the cross-process scheduling engine, a first sub-set of tile segments for execution in a private deployment including one or more private nodes, and dispatching, by the cross-process scheduling engine, a second sub-set of tile segments for execution in a public deployment including one or more public nodes.

Claims (43)

1. A computer-implemented method for selectively dispatching work scenarios between public deployments and private deployments, the method being executed by one or more processors and comprising:

generating, by the cross-process scheduling engine executed within a cloud platform, a lineage graph representing relationships between one or more of data and processes to be executed for a work scenario represented by work scenario metadata, the lineage graph comprising an outer layer for work scenario versioning history data representative of updates to the work scenario and an inner layer comprising a dependency graph representing up-to-date runtime lineage information for execution of the work scenario;

defining, by the cross-process scheduling engine and using the dependency graph, a set of tile segments for the work scenario based on the work scenario metadata and sensitivity metadata, each tile segment being designated as one of sensitive and non-sensitive and comprising process code, query statements, and data for execution of a portion of the work scenario, wherein a first tile segment has a dependency on a second tile segment as defined in the dependency graph;

dispatching, by the cross-process scheduling engine, a first sub-set of tile segments for execution in a private deployment comprising one or more private nodes, the first sub-set of tile segments comprising the first tile segment that is executed by a private node of the one or more private nodes;

dispatching, by the cross-process scheduling engine, a second sub-set of tile segments for execution in a public deployment comprising one or more public nodes, the second sub-set of tile segments comprising the second tile segment that is executed by a public node of the one or more public nodes; and

coordinating, by a cloud data sharing service, data flow between the private node and the public node for respective execution of the first tile segment and the second tile segment based on the dependency.

2. The method of claim 1 , further comprising:

executing a private support agent within each private node of the one or more private nodes, the private support agent providing private node metadata to the cloud data sharing service; and

executing a public support agent within each public node of the one or more public nodes, the public support agent providing public node metadata to the cloud data sharing service.

3. The method of claim 1 , wherein the sensitivity metadata comprises an indication of one or more of security-sensitivity and compliance-sensitivity of each of one or more of data to be processed in the work scenario and one or more processes of the work scenario.

4. The method of claim 1 , wherein the sensitivity metadata is provided to the cross-process scheduling engine from the cloud data sharing service that generates the sensitivity metadata based on metadata received from each of a plurality of support agent nodes executed within the private deployment and the public deployment.

5. The method of claim 1 , wherein the cross-process scheduling engine comprises a tile segment worker that selectively segments work scenarios to provide sets of tile segments.

6. The method of claim 1 , wherein defining a set of tile segments for the work scenario is executed in response to determining that the work scenario implicates one or more of security-sensitivity and compliance-sensitivity of each of one or more of data to be processed in the work scenario and one or more processes of the work scenario.

7. The method of claim 1 , wherein the public deployment comprises a public cloud and the private deployment comprises a private cloud in a hybrid cloud deployment.

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 selectively dispatching work scenarios between public deployments and private deployments, the operations comprising:

generating, by the cross-process scheduling engine executed within a cloud platform, a lineage graph representing relationships between one or more of data and processes to be executed for a work scenario represented by work scenario metadata, the lineage graph comprising an outer layer for work scenario versioning history data representative of updates to the work scenario and an inner layer comprising a dependency graph representing up-to-date runtime lineage information for execution of the work scenario;

defining, by the cross-process scheduling engine and using the dependency graph, a set of tile segments for the work scenario based on the work scenario metadata and sensitivity metadata, each tile segment being designated as one of sensitive and non-sensitive and comprising process code, query statements, and data for execution of a portion of the work scenario, wherein a first tile segment has a dependency on a second tile segment as defined in the dependency graph;

dispatching, by the cross-process scheduling engine, a first sub-set of tile segments for execution in a private deployment comprising one or more private nodes, the first sub-set of tile segments comprising the first tile segment that is executed by a private node of the one or more private nodes;

dispatching, by the cross-process scheduling engine, a second sub-set of tile segments for execution in a public deployment comprising one or more public nodes, the second sub-set of tile segments comprising the second tile segment that is executed by a public node of the one or more public nodes; and

coordinating, by a cloud data sharing service, data flow between the private node and the public node for respective execution of the first tile segment and the second tile segment based on the dependency.

9. The non-transitory computer-readable storage medium of claim 8 , wherein operations further comprise:

executing a private support agent within each private node of the one or more private nodes, the private support agent providing private node metadata to the cloud data sharing service; and

executing a public support agent within each public node of the one or more public nodes, the public support agent providing public node metadata to the cloud data sharing service.

10. The non-transitory computer-readable storage medium of claim 8 , wherein the sensitivity metadata comprises an indication of one or more of security-sensitivity and compliance-sensitivity of each of one or more of data to be processed in the work scenario and one or more processes of the work scenario.

11. The non-transitory computer-readable storage medium of claim 8 , wherein the sensitivity metadata is provided to the cross-process scheduling engine from the cloud data sharing service that generates the sensitivity metadata based on metadata received from each of a plurality of support agent nodes executed within the private deployment and the public deployment.

12. The non-transitory computer-readable storage medium of claim 8 , wherein the cross-process scheduling engine comprises a tile segment worker that selectively segments work scenarios to provide sets of tile segments.

13. The non-transitory computer-readable storage medium of claim 8 , wherein defining a set of tile segments for the work scenario is executed in response to determining that the work scenario implicates one or more of security-sensitivity and compliance-sensitivity of each of one or more of data to be processed in the work scenario and one or more processes of the work scenario.

14. The non-transitory computer-readable storage medium of claim 8 , wherein the public deployment comprises a public cloud and the private deployment comprises a private cloud in a hybrid cloud deployment.

15. A system, comprising:

a computing device; and

a non-transitory 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 selectively dispatching work scenarios between public deployments and private deployments, the operations comprising:

generating, by the cross-process scheduling engine executed within a cloud platform, a lineage graph representing relationships between one or more of data and processes to be executed for a work scenario represented by work scenario metadata, the lineage graph comprising an outer layer for work scenario versioning history data representative of updates to the work scenario and an inner layer comprising a dependency graph representing up-to-date runtime lineage information for execution of the work scenario;

defining, by the cross-process scheduling engine and using the dependency graph, a set of tile segments for the work scenario based on the work scenario metadata and sensitivity metadata, each tile segment being designated as one of sensitive and non-sensitive and comprising process code, query statements, and data for execution of a portion of the work scenario, wherein a first tile segment has a dependency on a second tile segment as defined in the dependency graph;

dispatching, by the cross-process scheduling engine, a first sub-set of tile segments for execution in a private deployment comprising one or more private nodes, the first sub-set of tile segments comprising the first tile segment that is executed by a private node of the one or more private nodes;

dispatching, by the cross-process scheduling engine, a second sub-set of tile segments for execution in a public deployment comprising one or more public nodes, the second sub-set of tile segments comprising the second tile segment that is executed by a public node of the one or more public nodes; and

coordinating, by a cloud data sharing service, data flow between the private node and the public node for respective execution of the first tile segment and the second tile segment based on the dependency.

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

executing a private support agent within each private node of the one or more private nodes, the private support agent providing private node metadata to the cloud data sharing service; and

executing a public support agent within each public node of the one or more public nodes, the public support agent providing public node metadata to the cloud data sharing service.

17. The system of claim 15 , wherein the sensitivity metadata comprises an indication of one or more of security-sensitivity and compliance-sensitivity of each of one or more of data to be processed in the work scenario and one or more processes of the work scenario.

18. The system of claim 15 , wherein the sensitivity metadata is provided to the cross-process scheduling engine from the cloud data sharing service that generates the sensitivity metadata based on metadata received from each of a plurality of support agent nodes executed within the private deployment and the public deployment.

19. The system of claim 15 , wherein the cross-process scheduling engine comprises a tile segment worker that selectively segments work scenarios to provide sets of tile segments.

20. The system of claim 15 , wherein defining a set of tile segments for the work scenario is executed in response to determining that the work scenario implicates one or more of security-sensitivity and compliance-sensitivity of each of one or more of data to be processed in the work scenario and one or more processes of the work scenario.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2021
From: ZHANG, LE; WANG, DAPING; HOU, HAOXING; SEMLER, MORITZ; WANG, YU
To: SAP SE
Reel/Frame 058441/0636 →
Continuity (1)
Related Publication 20230195515A1 · Jun 22, 2023
References Cited (22)
US 6598075B1 · Ogdon · 2003 [cited by examiner]
US 7152220B2 · Rickards, III · 2006 [cited by examiner]
US 8032846B1 · Balasubramanian · 2011 [cited by examiner]
US 9965209B2 · Rao · 2018 [cited by examiner]
US 10733522B2 · Curtis · 2020 [cited by examiner]
US 11080166B2 · Du et al. · 2021 [cited by applicant]
US 11709878B2 · Meyerzon · 2023 [cited by examiner]
US 20080134138A1 · Chamieh · 2008 [cited by examiner]
US 20090150362A1 · Evenhaim · 2009 [cited by examiner]
US 20150169758A1 · Assom · 2015 [cited by examiner]
US 20160071233A1 · Macko · 2016 [cited by examiner]
US 20170083588A1 · Lang · 2017 [cited by examiner]
US 20170293534A1 · Auvenshine · 2017 [cited by examiner]
US 20180096166A1 · Rogers · 2018 [cited by examiner]
US 20210150024A1 · Koshti · 2021 [cited by examiner]
US 20220334725A1 · Mertes · 2022 [cited by examiner]
US 20240111766A1 · Newman · 2024 [cited by examiner]
CN 108681482B · 2020 [cited by examiner]
John Whaley, Cloning-Based Context-Sensitive Pointer Alias Analysis Using Binary Decision Diagrams, (Year: 2004). [cited by examiner]
Lorenz Fischer, Workload Scheduling in Distributed Stream Processors using Graph Partitioning. (Year: 2015). [cited by examiner]
Gregory D Graff,The public-private structure of intellectual property ownership in agricultural biotechnology. (Year: 2003). [cited by examiner]
U.S. Appl. No. 17/482,914, filed Sep. 23, 2021, Wang et al. [cited by applicant]