IP Library Granted Patent US 10,489,266
Granted Patent B2
US 10,489,266 · App. 15/034,324 · Granted Nov 26, 2019

Generating a visualization of a metric at one or multiple levels of execution of a database workload

Inventors: William K. Wilkinson (San Mateo, CA); Alkiviadis Simitsis (Palo Alto, CA); Craig Peter Sayers (Menlo Park, CA)
Assignee: MICRO FOCUS LLC
G06F11/3433G06F11/323G06F16/248G06F11/3409G06F11/3419
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 10,489,266
App. No.
15/034,324
Granted
Nov 26, 2019
Kind
B2
Abstract

Described herein are techniques for generating a visualization relating to execution of a workload. Multiple measurements of a plurality of metrics relating to execution of the workload may be aggregated at multiple levels of execution. A visualization may be generated that comprises a representation of the measurements of a metric at one of the levels of execution.

Claims (46)

1. A method performed by a processing system comprising:

receiving multiple measurements of a plurality of metrics relating to physical operators, in a physical execution tree, executing a database query;

determining logical operators in a query execution plan for executing the database query, wherein the query execution plan is determined from the physical execution tree, and each logical operator is associated with at least one of the physical operators;

aggregating the multiple measurements of the plurality of metrics at multiple levels associated with the logical operators;

generating a visualization representing execution of the database query, the visualization comprising a representation of the measurements of at least one of the metrics at one of the levels; and

updating the visualization periodically to include current measurements, wherein the updating of the visualization includes:

suppressing unhelpful information by one of hiding a non-executing portion of the database query, hiding an insignificant metric value of the database query, or using a logarithmic scale for a displayed chart;

receiving a first instruction to drill down on the visualization from a node level to a path level, wherein the first instruction includes a transition from displaying a first metric of a first logical operator at the node level to displaying the first metric of the first logical operator at the path level; and

pivoting, upon receiving a second instruction, to display the visualization along a different dimension, wherein the pivoting includes displaying the first metric for all of the logical operators at the path level.

2. The method of claim 1 , further comprising:

providing a user interface to allow selection of one or more of the plurality of metrics at one of the multiple levels;

receiving a selection of one or more of the plurality of metrics at one of the multiple levels; and

generating a new visualization representing execution of the database query, the new visualization comprising a representation of the measurements of the selected one or more metrics at the one of the multiple levels.

3. The method of claim 2 , wherein the user interface allows selection of a time period, the generated new visualization comprising a representation of the measurements of the selected one or more metrics at the one of the multiple levels over the selected time period.

4. The method of claim 1 ,

wherein the multiple levels comprise at least two levels from a query level, a query phase level, the node level, the path level, and an operator level.

5. The method of claim 4 , wherein:

the visualization generated at the query level comprises a representation of execution of the entire database query,

the visualization generated at the query phase level comprises a representation of execution of the database query at a current phase of the database query,

the visualization generated at the node level comprises a representation of execution of the database query on one or more nodes of a query engine executing the database query,

the visualization generated at the path level comprises a representation of execution of logical operations of the database query, and

the visualization generated at the operator level comprises a representation of execution of physical operations of the database query.

6. The method of claim 5 , further comprising modifying the visualization to show measurements of at least one of the plurality of metrics at a different level than the one of the levels in response to a user input.

7. The method of claim 1 , wherein the plurality of metrics comprise at least two metrics from elapsed time, execution time, memory allocated, memory reserved, rows processed, processor utilization, and network activity.

8. The method of claim 1 , wherein the visualization further comprises a representation of estimates of at least one of the plurality of metrics at the one of the levels.

9. A system comprising:

a database to store measurements of metrics relating to physical operators, in a physical execution tree, executing a database query, wherein the metrics are collected by a query execution engine during execution of the database query;

an aggregator, executed by a processor, to aggregate the measurements of the metrics at multiple levels of execution of the database query, wherein the multiple levels are associated with logical operators, and each logical operator corresponds to at least one of the physical operators;

a web server to provide a user interface to allow selection of one or more of the metrics and one of the levels; and

a visualization generator, executed by a processor, to generate a visualization representing execution of the database query, the visualization comprising a representation of the measurements of a selected metric at a selected level of execution,

wherein the user interface is further to allow updating of the visualization periodically to include current measurements, and further wherein to allow the updating of the visualization the user interface is to:

receive a first instruction to drill down on the visualization from a node level to a path level, wherein the first instruction includes a transition from displaying a first metric of a first logical operator at the node level to displaying the first metric of the first logical operator at the path level; and

pivot, upon receiving a second instruction, to display the visualization along a different dimension, wherein the pivoting includes displaying the first metric for all of the logical operators at the path level.

10. The system of claim 9 , wherein the multiple levels comprise at least two levels from a query level, a query phase level, the node level, the path level, and an operator level.

11. A non-transitory computer-readable storage medium storing instructions for execution by a computer, the instructions when executed causing the computer to:

receive multiple measurements of a plurality of metrics relating to physical operators, in a physical execution tree, executing a database workload;

determine logical operators in an execution plan for executing the database workload, wherein the execution plan is determined from the physical execution tree, and each logical operator is associated with at least one of the physical operators;

aggregate the multiple measurements of the plurality of metrics at multiple levels associated with the logical operators;

generate a visualization representing execution of the workload, the visualization comprising a representation of the multiple measurements of at least one of the metrics at one of the levels; and

update the visualization periodically to include current measurements, wherein to update the visualization, the instructions when executed cause the computer further to:

suppress unhelpful information by one of hiding a non-executing portion of a database query, hiding an insignificant metric value of the database query, or using a logarithmic scale for a displayed chart;

receive a first instruction to drill down on the visualization from a node level to a path level, wherein the first instruction includes a transition from displaying a first metric of a first logical operator at the node level to displaying the first metric of the first logical operator at the path level; and

pivot, upon receiving a second instruction, to display the visualization along a different dimension, wherein the pivoting includes displaying the first metric for all of the logical operators at the path level.

12. The medium of claim 11 , wherein the workload comprises a query or a workflow.

13. The medium of claim 12 , wherein if the workload comprises a query, the multiple levels comprise at least two levels from a query level, a query phase level, the node level, the path level, and an operator level.

14. The medium of claim 12 , wherein if the workload comprises a workflow, the multiple levels comprise at least two levels from a workflow level, the node level, a logical operator level, and a physical operator level.

Assignments (13)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 063546/0181) Recorded Jun 21, 2024
From: BARCLAYS BANK PLC
To: MICRO FOCUS LLC
Reel/Frame 067807/0076 →
SECURITY INTEREST Recorded Aug 30, 2023
From: MICRO FOCUS LLC
To: THE BANK OF NEW YORK MELLON
Reel/Frame 064760/0862 →
SECURITY INTEREST Recorded May 4, 2023
From: MICRO FOCUS LLC
To: BARCLAYS BANK PLC
Reel/Frame 063546/0181 →
SECURITY INTEREST Recorded May 4, 2023
From: MICRO FOCUS LLC
To: BARCLAYS BANK PLC
Reel/Frame 063546/0190 →
SECURITY INTEREST Recorded May 4, 2023
From: MICRO FOCUS LLC
To: BARCLAYS BANK PLC
Reel/Frame 063546/0230 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0577 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC)
Reel/Frame 063560/0001 →
CHANGE OF NAME Recorded Aug 8, 2019
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 050004/0001 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ARCSIGHT, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0577 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENTIT SOFTWARE LLC
Reel/Frame 042746/0130 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 11, 2016
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 038668/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2016
From: WILKINSON, WILLIAM K.; SIMITSIS, ALKIVIADIS; SAYERS, CRAIG PETER
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 038455/0526 →