# US 12,769,721 B2 · Management of diverse data analytics frameworks in computing systems

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

- Number: US 12,769,721 B2
- Document ID: US12769721B2
- Status: Granted
- Kind: B2
- Application number: 17/138,738
- Filed: 2020-12-30
- Published: 2021-12-30
- Granted: 2026-10-20
- Earliest claimed: 2020-06-24
- Assignees: Teradata US, Inc.
- Applicants: David Mueller; Sebastian Mariano Salomon; Riaz Uddin; Gregory Earl Hart; Omri Shiv; Khaled Bouaziz; Guillaume Koch; Arnaud Flament
- Inventors: David Mueller; Sebastian Mariano Salomon; Riaz Uddin; Gregory Earl Hart; Omri Shiv; Khaled Bouaziz; Guillaume Koch; Arnaud Flament
- Web page: https://patentgrep.com/patent/US12769721B2

## CPC

- G06F 16/2365: {Ensuring data consistency and integrity}
- G06F 16/219: {Managing data history or versioning (querying versioned data G06F16/2474; querying temporal data G06F16/2477)}
- G06F 16/2379: {Updates performed during online database operations; commit processing}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Data Analytics Engines can be provided as a “black-boxed” abstraction to their “users.” This allows a user to mix and match analytical components if their input data matches the input requirement of the engine. Furthermore, by decoupling the Data Analytics Engine creation from the environment, a high degree of process automation, scalability, and improved maintainability can be achieved. As a result, Data Analytic engineers and Data Scientists can create reusable components for other scientists and business users, whereas the users need not know how the Engines are coded or the environment in which their engines will run, but only need to know the input schema of the data.

## Claims

### Claim 1

A computer-implemented method of managing a data analytics environment that includes multiple data analytics platforms, wherein the multiple data analytics platforms include a first data analytics platform and a second data analytics platform that differ from each other with respect to at least one criterion, wherein the computer-implemented method is performed at least partly by a computing system that includes one or more processors configured to execute computer executable code, and wherein the computer-implemented method comprises:
providing, by the computing system, a data analytics engine manager managing data analytics of the first data analytics platform and a second data analytics platform;
obtaining, by the data analytics engine manager of the computing system, a first data analytics engine definition that includes one or more Application Program Interfaces that define a first data analytics engine designated to perform data analytics on the first data analytics platform of the multiple data analytics platforms, wherein the one or more Application Program Interfaces include one or more declarative application program interfaces each defining multiple resources, wherein the multiple defined resources include: (i) one or more job definitions defining one or more executable jobs that are supported by the first data analytics engine, (ii) one or more artifact definitions including a description of the properties supported by the first data analytics engine and one or more associated validation requirements of the first data analytics engine, (iii) one or more runner definitions executing the job definitions supported by the first data analytics engine, and (iv) one or more runner containers supporting the execution of the job definitions by the one or more runner definitions;
generating, by the data analytics engine manager of the computing system, based on the obtained first definition engine, a version of the first data analytics engine for the first data analytics platform as a first pluggable engine, wherein the generating of the version of the first data analytics engine for the first data analytics platform further comprises: generating the first pluggable engine, at least in part, based on an abstraction represented at least by the following: (a) the one or more runner definitions of the first pluggable engine, (b) the one or more runner containers of the first pluggable engine, (c) the one or more job definitions of the first pluggable engine, (d) the one or more artifact definitions provided for the first pluggable engine;
wherein the first data analytics engine includes at least one runner resource manager and at least one runner resource component, wherein the at least one runner resource component is provided as an abstraction of an execution unit of the first data analytics engine of the first pluggable engine and further defines a data analytics environment, including one or more jobs that the data analytics environment supports, and wherein the at least one runner resource manager at least: (i) dynamically registers and unregisters at least one other runner definition, and (ii) manages execution of the one or more runner definitions and the at least one other runner definition;
plugging, by the data analytics engine manager, the generated first pluggable data analytics engine into the first data analytics platform; and
thereafter performing, by the generated first pluggable data analytics engine, one or more data analytics operations.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the generating of the version of the first data analytics engine of the first data analytics platform based on the obtained first definition engine further comprises:
generating the first data analytics engine as a pluggable engine while at least another data engine is operating in the second data analytics platform in the multiple data analytics platforms.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, wherein the computer-implemented method further comprises:
obtaining a second data analytics engine definition that is a definition of a second data analytics engine designated to perform data analytics on the second data analytics platform of the multiple data analytics platforms; and
generating, based on the obtained second definition engine, a version of the second data analytics engine for the second data analytics platform.

### Claim 4 (depends on 3)

The computer-implemented method of claim 3, wherein the generating of the version of the second data analytics engine of the second data analytics platform based on the obtained second definition engine, generates the version of the second data analytics engine while the first data analytics engine is operating on the first data analytics platform of the multiple data analytics platforms.

### Claim 5 (depends on 4)

The computer-implemented method of claim 4, wherein the version of the second data analytics engine and the version of the first data analytics engine interchange data between each other.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein the first data analytics engine definition is an updated data analytics engine, and wherein the generating of the version of the first data analytics engine provided for the first data analytics platform based on the obtained first definition engine further comprises:
determining whether to remove an older version of a data analytics engine provided for the first data analytics platform; and
removing an older version of a data analytics engine of the first data analytics platform when the determining determines to remove the older version of a data analytics engine provided for the first data analytics platform; and
generating the first data analytics engine as an updated version of the older version of the data analytics engine for the first data analytics platform.

### Claim 7 (depends on 6)

The computer-implemented method of claim 6, wherein the generating the first data analytics engine as an updated version of the older version of the data analytics engine for the first data analytics platform comprises:
generating the first data analytics engine as an updated version while at least another data engine is operating in the second data analytics platform of the multiple data analytics platforms.

### Claim 8

A computing system that includes one or more processors providing a Data Analytics Engine Manager that manages data analytics of the first data analytics platform and a second data analytics platform, wherein the Data Analytics Engine Manager:
operates on multiple data analytics platforms that vary from each other with respect to at least one criterion wherein the multiple data analytics platforms include a first data analytics platform and a second data analytics platform;
obtains multiple engine definitions of multiple data analytics engines, including a first obtained data analytics engine definition and a second obtained analytics engine definition, wherein the first data analytics engine definition includes one or more Application Program Interfaces that define a first data analytics engine designated to perform data analytics on the first data analytics platform, wherein the one or more Application Program Interfaces include one or more declarative application program interfaces each defining multiple resources, wherein the multiple defined resources include: (i) one or more job definitions defining one or more executable jobs that are supported by the first data analytics engine, (ii) one or more artifact definitions including a description of the properties supported by the first data analytics engine and one or more associated validation requirements of the first data analytics engine, (iii) one or more runner definitions executing the job definitions supported by the first data analytics engine, and (iv) one or more runner containers supporting the execution of the job definitions by the one or more runner definitions, and wherein the second data analytics data definition is a definition of a second data analytics engine designated to perform data analytics on the second data analytics platform;
generates, based on the obtained first data analytics engine, a version of the first data analytics engine for the first data analytics platform as a first pluggable engine, wherein the generating of the version of the first data analytics engine for the first data analytics platform further comprises: generating the version of the first data analytics engine, at least in part, based on the following: (a) one or more runner definitions, (b) one or more runner containers, (c) one or more job definitions, and (d) one or more artifact definitions, wherein the first data analytics engine includes at least one runner resource manager and at least one runner resource component, wherein the at least one runner resource component is provided as an abstraction of an execution unit of the first data analytics engine of the first pluggable engine and further defines a data analytic environment, including one or more jobs that the data analytics environment supports, and wherein the at least one runner resource manager at least: (i) dynamically registers and unregisters at least one other runner definition, and (ii) manages execution of the one or more runner definitions and the at least one other runner definition; and
plugs the generated first pluggable data analytics engine into the first data analytics platform, wherein the first pluggable data analytics engine thereafter performs one or more data analytics operations.

### Claim 9 (depends on 8)

The computing system of claim 8, wherein the Data Analytics Engine Manager further: generates, based on the first definition of the first data engine, the version of the first data analytics engine for the first data analytics platform while still operating on the multiple data analytics platforms.

### Claim 10 (depends on 8)

The computing system of claim 8, wherein the Data Analytics Engine Manager further: generates, based on a second obtained engine definition of the second data engine, a version of the second data analytics engine for the second data analytics platform.

### Claim 11 (depends on 8)

The computing system of claim 8, wherein the Data Analytics Engine Manager further: generates, based on a second engine definition of the second data engine, a version of the second data analytics engine on the second data analytics platform while still operating on the first data analytics engine of the multiple data analytics platforms.

### Claim 12 (depends on 8)

The computing system of claim 8, wherein the Data Analytics Engine Manager further: removes the generated version of the first data analytics engine on the first data analytics platform.

### Claim 13 (depends on 12)

The computing system of claim 12, wherein the Data Analytics Engine Manager further: obtains an updated version of the first obtained definition of the first data engine while still operating on the first data analytics engine of the multiple data analytics platforms; and
generates, based on the updated version of the first data engine, an updated version of the first data analytics engine for the first data analytics platform, while still operating on the first data analytics engine of the multiple data analytics platforms.

### Claim 14

A non-transitory computer readable storage medium storing at least executable computer code for managing a data analytics environment that includes multiple data analytics platforms, wherein the multiple data analytics platforms include a first data analytics platform and a second data analytics platform that differ from each other with respect to at least one criterion, wherein the executable computer code includes:
providing a data analytics engine manager, wherein the data analytics manager manages data analytics of the first data analytics platform and the second data analytics platform;
obtaining a first data analytics engine definition that is a definition of a first data analytics engine designated to perform data analytics on the first data analytics platform of the multiple data analytics platforms, the first data analytics engine definition including one or more Application Program Interfaces that define the first data analytics engine, wherein the one or more Application Program Interfaces include one or more declarative application program interfaces each defining multiple resources, wherein the multiple defined resources include: (i) one or more job definitions defining one or more executable jobs that are supported by the first data analytics engine, (ii) one or more artifact definitions including a description of the properties supported by the first data analytics engine and one or more associated validation requirements of the first data analytics engine, (iii) one or more runner definitions executing the job definitions supported by the first data analytics engine, and (iv) one or more runner containers supporting the execution of the job definitions by the one or more runner definitions;
generating, based on the obtained first definition engine, a version of the first data analytics engine for the first data analytics platform, wherein the generating generates the version of the first data analytics engine, at least in part, based on the following: (a) one or more runner definitions, (b) one or more runner containers, (c) one or more job definitions, and (d) one or more artifact definitions, wherein the first data analytics engine includes at least one runner resource manager and at least one runner resource component, wherein the at least one runner resource component is provided as an abstraction of an execution unit of the first data analytics engine of the first pluggable engine and further defines a data analytic environment, including one or more jobs that the data analytics environment supports, and wherein the at least one runner resource manager at least: (i) dynamically registers and unregisters at least one other runner definition, and (ii) manages execution of the one or more runner definitions and the at least one other runner definition;
plugging, by the data analytics engine manager, the generated first pluggable data analytics engine into the first data analytics platform; and
thereafter performing, by the generated first pluggable data analytics engine, one or more data analytics operations.

### Claim 15 (depends on 14)

The non-transitory computer readable storage medium of claim 14, wherein the generating of the version of the first data analytics engine on the first data analytics platform based on the obtained first definition engine further comprises: generating the first data analytics engine for the first data analytics platform while at least another data engine is operating in the second data analytics platform in the multiple data analytics platforms.

### Claim 16 (depends on 14)

The non-transitory computer readable storage medium of claim 14, wherein the executable computer code further includes:
executable computer code to obtain a second data analytics engine definition that is a definition of a second data analytics engine designated to perform data analytics on the second data analytics platform of the multiple data analytics platforms; and
executable computer code to generate, based on the obtained second definition engine, a version of the second data analytics engine for the second data analytics platform.

### Claim 17 (depends on 16)

The non-transitory computer readable storage medium of claim 16, wherein the generating of the version of the second data analytics engine for the second data analytics platform based on the obtained second definition engine, generates the version of the second data analytics engine while the first data analytics engine is operating for the first data analytics platform of the multiple data analytics platforms.

### Claim 18 (depends on 16)

The non-transitory computer readable storage medium of claim 16, wherein the version of the second data analytics engine on the second data analytics platform and the version of the first data analytics engine for the first data analytics platform interchange data between each other.

### Claim 19 (depends on 14)

The non-transitory computer readable storage medium of claim 14, wherein the first data analytics engine definition is an updated data analytics engine, and wherein the generating of the version of the first data analytics engine for the first data analytics platform based on the obtained first definition engine further comprises:
determining whether to remove an older version of a data analytics engine on the first data analytics platform;
removing an older version of a data analytics engine on the first data analytics platform when the determining determines to remove an older version of a data analytics engine for the first data analytics platform; and
generating the first data analytics engine as an updated version of the older version of the data analytics engine for the first data analytics platform.

### Claim 20 (depends on 19)

The non-transitory computer readable storage medium of claim 19,
wherein the generating the first data analytics engine as an updated version of the older version of the data analytics engine on the first data analytics platform comprises:
generating the first data analytics engine as an updated version while at least another data engine is operating for the second data analytics platform of the multiple data analytics platforms.
