# US 11,030,168 B2 · Parallelization of order dependent procedures during software change processes

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,030,168 B2
- Document ID: US11030168B2
- Status: Granted
- Kind: B2
- Application number: 16/216,387
- Filed: 2018-12-11
- Published: 2020-06-11
- Granted: 2021-06-08
- Earliest claimed: 2018-12-11
- Assignees: Sap SE
- Applicants: Sap SE
- Inventors: Barbara Freund; Wulf Kruempelmann
- Web page: https://patentgrep.com/patent/US11030168B2

## CPC

- G06F 16/217: {Database tuning (G06F16/2282 takes precedence; database performance monitoring G06F11/3409)}
- G06F 16/24532: {of parallel queries}
- G06F 9/4881: {Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues}
- G06F 9/5038: {considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration (scheduling strategies G06F9/4881 and subgroups)}
- G06F 16/2246: {Trees, e.g. B+trees}
- G06F 16/254: {Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses}
- G06F 16/9027: {Trees}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Described herein includes an information transport system that optimizes the import of information systems to efficiently and speedily complete the transport. The system may include a transport processor for receiving a request to transport data; generating a dependency table comprising a plurality of procedures for executing the request; generating a dependency tree based on the dependency table, the dependency tree comprising at least one independent string of procedures from the plurality of procedures, the dependency tree indicating the order that the plurality of procedures will be executed by the transport processor; and executing the dependency tree.

## Claims

### 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:
receiving, by a transport processor of an application server and via a client interface associated with the application server, a request to transport data;
generating, at least in part by the transport processor, a dependency table comprising a plurality of procedures for executing the request;
generating, by the transport processor, a dependency tree based on the dependency table, the dependency tree comprising at least one independent string of procedures from the plurality of procedures, the dependency tree indicating the order that the plurality of procedures will be executed by the transport processor; and
executing, by the transport processor, the dependency tree.

### Claim 2 (depends on 1)

The system of claim 1, wherein the executing the dependency tree further comprises executing, by the transport processor, each of the one or more independent strings of procedures in parallel.

### Claim 3 (depends on 2)

The system of claim 2, wherein each of the one or more independent strings of procedures includes a root procedure and an order-dependent procedure, the order-dependent procedure depending on the root procedure being first executed.

### Claim 4 (depends on 1)

The system of claim 1, wherein the executing the dependency tree further comprises locating at least two root procedures that do not depend on other procedures being first executed, and executing the independent strings of procedures in parallel beginning at each root procedure of the at least two root procedures.

### Claim 5 (depends on 1)

The system of claim 1, wherein generating the dependency table further comprises:
determining, by the transport processor, whether each procedure of the plurality of procedures is a root procedure, at least in part by determining that the root procedure does not have a predecessor procedure, the predecessor procedure defining a procedure of the plurality of procedures that must be executed prior to a subsequently executed procedure;
locating the root procedure; and
storing, by the transport processor, the root procedure in the dependency table.

### Claim 6 (depends on 1)

The system of claim 1, wherein generating the dependency table further comprises:
determining, by the transport processor, whether each procedure of the plurality of procedures is an order-dependent procedure, at least in part by determining that the root procedure depends on a predecessor procedure being first executed, the predecessor procedure defining a procedure of the plurality of procedures that must be executed prior to a subsequently executed procedure;
locating the order-dependent procedure; and
storing, by the transport processor, the order-dependent procedure in the dependency table.

### Claim 7

A computer-implemented method, comprising:
receiving, by a transport processor of an application server and via a client interface associated with the application server, a request to transport data;
generating, at least in part by the transport processor, a dependency table comprising a plurality of procedures for executing the request;
generating, by the transport processor, a dependency tree based on the dependency table, the dependency tree comprising at least one independent string of procedures from the plurality of procedures, the dependency tree indicating the order that the plurality of procedures will be executed by the transport processor; and
executing, by the transport processor, the dependency tree.

### Claim 8 (depends on 7)

The method of claim 7, wherein the executing the dependency tree further comprises executing, by the transport processor, each of the one or more independent strings of procedures in parallel.

### Claim 9 (depends on 8)

The method of claim 8, wherein each of the one or more independent strings of procedures includes a root procedure and an order-dependent procedure, the order-dependent procedure depending on the root procedure being first executed.

### Claim 10 (depends on 7)

The method of claim 7, wherein the executing the dependency tree further comprises locating at least two root procedures that do not depend on other procedures being first executed, and executing the independent strings of procedures in parallel beginning at each root procedure of the at least two root procedures.

### Claim 11 (depends on 7)

The method of claim 7, wherein generating the dependency table further comprises:
determining, by the transport processor, whether each procedure of the plurality of procedures is a root procedure, at least in part by determining that the root procedure does not have a predecessor procedure, the predecessor procedure defining a procedure of the plurality of procedures that must be executed prior to a subsequently executed procedure; locating the root procedure; and
storing, by the transport processor, the root procedure in the dependency table.

### Claim 12 (depends on 7)

The method of claim 7, wherein generating the dependency table further comprises:
determining, by the transport processor, whether each procedure of the plurality of procedures is an order-dependent procedure, at least in part by determining that the root procedure depends on a predecessor procedure being first executed, the predecessor procedure defining a procedure of the plurality of procedures that must be executed prior to a subsequently executed procedure;
locating the order-dependent procedure; and
storing, by the transport processor, the order-dependent procedure in the dependency table.

### Claim 13

A non-transitory computer-readable medium storing instructions, which when executed by at least one data processor, result in operations comprising:
receiving, by a transport processor of an application server and via a client interface associated with the application server, a request to transport data;
generating, at least in part by the transport processor, a dependency table comprising a plurality of procedures for executing the request;
generating, by the transport processor, a dependency tree based on the dependency table, the dependency tree comprising at least one independent string of procedures from the plurality of procedures, the dependency tree indicating the order that the plurality of procedures will be executed by the transport processor; and
executing, by the transport processor, the dependency tree.

### Claim 14 (depends on 13)

The non-transitory computer-readable medium of claim 13, wherein the executing the dependency tree further comprises executing, by the transport processor, each of the one or more independent strings of procedures in parallel.

### Claim 15 (depends on 14)

The non-transitory computer-readable medium of claim 14, wherein each of the one or more independent strings of procedures includes a root procedure and an order-dependent procedure, the order-dependent procedure depending on the root procedure being first executed.

### Claim 16 (depends on 13)

The non-transitory computer-readable medium of claim 13, wherein the executing the dependency tree further comprises locating at least two root procedures that do not depend on other procedures being first executed, and executing the independent strings of procedures in parallel beginning at each root procedure of the at least two root procedures.

### Claim 17 (depends on 13)

The non-transitory computer-readable medium of claim 13, wherein generating the dependency table further comprises:
determining, by the transport processor, whether each procedure of the plurality of procedures is a root procedure, at least in part by determining that the root procedure does not have a predecessor procedure, the predecessor procedure defining a procedure of the plurality of procedures that must be executed prior to a subsequently executed procedure;
locating the root procedure; and
storing, by the transport processor, the root procedure in the dependency table.

### Claim 18 (depends on 13)

The non-transitory computer-readable medium of claim 13, wherein generating the dependency table further comprises:
determining, by the transport processor, whether each procedure of the plurality of procedures is an order-dependent procedure, at least in part by determining that the root procedure depends on a predecessor procedure being first executed, the predecessor procedure defining a procedure of the plurality of procedures that must be executed prior to a subsequently executed procedure;
locating the order-dependent procedure, and
storing, by the transport processor, the order-dependent procedure in the dependency table.
