IP Library Granted Patent US 11,846,970
Granted Patent B2
US 11,846,970 · App. 17/556,313 · Granted Dec 19, 2023

Performing data correlation to optimize continuous integration environments

Inventors: Arie Bregman (Gan Yavne, IL); Avraham Talmor (Rishon Letzion, IL); Ilan Gersht (Bat Yam, IL)
Assignee: Red Hat, Inc.
G06F8/71G06F18/2135G06F18/23213
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 11,846,970
App. No.
17/556,313
Granted
Dec 19, 2023
Kind
B2
Abstract

The technology disclosed herein enables performing data correlation to optimize continuous integration environments. An example method comprises receiving, by a processor of a client device, input data identifying a plurality of execution environment parameters associated with an execution environment; retrieving, during execution of a software build job, parameter data associated with each of the execution environment parameters of the plurality of execution environment parameters; generating, in view of the retrieved parameter data, correlation data indicative of a relationship between a first execution environment parameter of the plurality of execution environment parameters and a second execution environment parameter of the plurality of execution environment parameters, wherein the first execution environment parameter reflects an observable aspect of a state of the execution environment, and the second execution environment parameter reflects an aspect associated with a performance of the execution environment; and displaying, on a graphical user interface, the correlation data.

Claims (45)

1. A method comprising:

receiving, by a processor of a client device, input data identifying a plurality of execution environment parameters associated with an execution environment;

retrieving, during execution of a software build job, parameter data associated with each of the execution environment parameters of the plurality of execution environment parameters;

generating, in view of the retrieved parameter data, correlation data indicative of a relationship between a first execution environment parameter of the plurality of execution environment parameters and a second execution environment parameter of the plurality of execution environment parameters, wherein the first execution environment parameter reflects an observable aspect of a state of the execution environment, and the second execution environment parameter reflects an aspect associated with a performance of the execution environment; and

displaying, on a graphical user interface of the client device, the correlation data.

2. The method of claim 1 , further comprising:

optimizing the execution environment in view of the correlation data by preventing a computing node from executing a job in view of at least one of: a number of stages in the job or a hardware specification of the computing node.

3. The method of claim 1 , wherein the execution environment parameter comprises at least one of a job definition property, job execution information, a job artifact, or a computing node property.

4. The method of claim 1 , further comprising:

receiving, by the processor of the client device, further input data identifying one or more computing nodes from which to retrieve the parameter data.

5. The method of claim 1 , further comprising:

receiving, by the processor of the client device, further input data identifying a duration during which to retrieve the parameter data.

6. The method of claim 1 , wherein generating the correlation data comprises determining a relationship between the first execution environment parameter and the second execution environment parameter using at least one of a correlation matrix, a scatter plot, k-means clustering, Lasso Regression, or principal component analysis.

7. The method of claim 1 , further comprising:

generating an alert indicative of a third execution environment parameter that affects the relationship between the first execution environment parameter and the second execution environment parameter.

8. A system comprising:

a memory;

a processing device operatively coupled to the memory, the processing device configured to:

receive input data identifying a plurality of execution environment parameters associated with an execution environment;

retrieve, during execution of a software build job, parameter data associated with each of the execution environment parameters of the plurality of execution environment parameters;

generate, in view of the retrieved parameter data, correlation data indicative of a relationship between a first execution environment parameter of the plurality of execution environment parameters and a second execution environment parameter of the plurality of execution environment parameters, wherein the first execution environment parameter reflects an observable aspect of a state of the execution environment, and the second execution environment parameter reflects an aspect associated with a performance of the execution environment; and

display, on a graphical user interface, the correlation data.

9. The system of claim 8 , wherein the processing device is further configured to:

optimize the execution environment in view of the correlation data by preventing a computing node from executing a job in view of at least one of: a number of stages in the job or a hardware specification of the computing node.

10. The system of claim 8 , wherein the execution environment parameter comprises at least one of a job definition property, job execution information, a job artifact, or a computing node property.

11. The system of claim 8 , wherein the processing device is further configured to:

receive further input data identifying one or more computing nodes from which to retrieve the parameter data.

12. The system of claim 8 , wherein the processing device is further configured to:

receive further input data identifying a duration during which to retrieve the parameter data.

13. The system of claim 8 , wherein generating the correlation data comprises determining a relationship between the first execution environment parameter and the second execution environment parameter using at least one of a correlation matrix, a scatter plot, k-means clustering, Lasso Regression, or principal component analysis.

14. The system of claim 8 , wherein the processing device is further configured to:

generate an alert indicative of a third execution environment parameter that affects the relationship between the first execution environment parameter and the second execution environment parameter.

15. A non-transitory machine-readable storage medium storing executable instructions that, when executed by a processing device, cause the processing device to:

receive input data identifying a plurality of execution environment parameters associated with an execution environment;

retrieve, during execution of a software build job, parameter data associated with each of the execution environment parameters of the plurality of execution environment parameters;

generate, in view of the retrieved parameter data, correlation data indicative of a relationship between a first execution environment parameter of the plurality of execution environment parameters and a second execution environment parameter of the plurality of execution environment parameters, wherein the first execution environment parameter reflects an observable aspect of a state of the execution environment, and the second execution environment parameter reflects an aspect associated with a performance of the execution environment; and

display, on a graphical user interface, the correlation data.

16. The non-transitory machine-readable storage medium of claim 15 , further comprising executable instructions that, when executed by the processing device, cause the processing device to:

optimize the execution environment in view of the correlation data by preventing a computing node from executing a job in view of at least one of: a number of stages in the job or a hardware specification of the computing node.

17. The non-transitory machine-readable storage medium of claim 15 , wherein the execution environment parameter comprises at least one of a job definition property, job execution information, a job artifact, or a computing node property.

18. The non-transitory machine-readable storage medium of claim 15 , further comprising executable instructions that, when executed by the processing device, cause the processing device to:

receive further input data identifying one or more computing nodes from which to retrieve the parameter data.

19. The non-transitory machine-readable storage medium of claim 15 , further comprising executable instructions that, when executed by the processing device, cause the processing device to:

receive further input data identifying a duration during which to retrieve the parameter data.

20. The non-transitory machine-readable storage medium of claim 15 , wherein generating the correlation data comprises determining a relationship between the first execution environment parameter and the second execution environment parameter using at least one of a correlation matrix, a scatter plot, k-means clustering, Lasso Regression, or principal component analysis.

Assignments (2)
CHANGE OF NAME Recorded Mar 3, 2026
From: RED HAT, INC.
To: RED HAT, LLC
Reel/Frame 074913/0759 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2022
From: BREGMAN, ARIE; TALMOR, AVRAHAM; GERSHT, ILAN
To: RED HAT, INC.
Reel/Frame 060292/0498 →