IP Library Patent Application 14818054
Patent Application
App. No. 14/818,054

Query Plan Analysis Of Alternative Plans Using Robustness Mapping

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 None
App. No.
14/818,054
Abstract

Computer-implemented and associated operating methods evaluate robustness of a query plan by measuring performance with regard to a range of runtime conditions and producing a map of relative performance of the given query plan when compared with alternative plans for a range of conditions. The computer-implemented system comprises logic that evaluates the selected query plan in comparison to multiple alternative query plans in a predetermined range of runtime conditions that include data characteristics. The logic produces a set of performance measurements and analyzes the measured performance to map performance of the selected query plan in comparison to performance of one or more alternative query plans.

Claims (31)

1 - 15 . (canceled)

16 . A computer-implemented system comprising:

a processor; and

logic stored in memory, the logic executable by the processor to evaluate a selected query plan in comparison to alternative query plans over a predetermined range of runtime conditions including data characteristics, wherein to evaluate comprises to:

produce performance measurements of the selected query plan and the alternative query plans over the predetermined range of runtime conditions; and

analyze the performance measurements to map performance of the selected query plan in comparison to performance of at least one alternative query plan of the alternative query plans over the predetermined range of runtime conditions.

17 . The system according to claim 15 , wherein the performance comprises anticipated performance on a database system.

18 . The system according to claim 15 , wherein to map performance generates a performance map.

19 . The system according to claim 18 , wherein the predetermined range of runtime conditions comprise a resource availability, wherein a first axis of the performance map comprises the resource availability, and a second axis of the performance map comprises cardinality.

20 . The system according to claim 15 , wherein to evaluate the selected query plan in comparison to alternative query plans comprises to generate a marked performance map through the predetermined range of runtime conditions, wherein marking is indicative of performance of the selected query plan in comparison to at least one of the alternative query plans under runtime conditions of the predetermined range of runtime conditions.

21 . The system according to claim 15 , wherein to evaluate the selected query plan in comparison to alternative query plans comprises to generate a marked performance map, and wherein marking is indicative of regions of the predetermined range of runtime conditions where the selected query plan degrades a predetermined amount when compared to a best alternative query plan of the alternate query plans.

22 . The system according to claim 15 , wherein the data characteristics comprise cardinality, and the runtime conditions comprise available memory.

23 . The system according to claim 15 , wherein the logic comprises a query optimizer that generates via the processor the plurality of alternative query plans for a query.

24 . The system according to claim 15 , wherein the logic via the processor generates the alternative query plans for a query to be evaluated under a set of predetermined runtime resource conditions.

25 . The system according to claim 24 , wherein the logic via the processor executes the query to be evaluated using the alternative query plans with a range of predetermined runtime resource conditions forming a query plan/resource condition coordinate set, the logic via the processor comparing performance of the selected query plan to performance of a best performing alternative query plan of the alternate query plans for each coordinate set and generating a performance map as a function of the query plan/resource condition coordinate set, the performance map indicative of comparison of the selected query plan to the best performing alternative query plan of the alternative query plans over the query plan/resource condition coordinate set.

26 . The system according to claim 15 , comprising an interface to receive a query, a target query plan, and a set of runtime resource conditions to be evaluated, wherein the logic via the processor iterates through the predetermined range of runtime conditions comprising to iterate running the query for sets of runtime conditions under the selected query plan and alternative query plans.

27 . The system according to claim 26 , wherein to iterate running the query comprises running the query under the sets of runtime conditions for the selected query plan and alternative query plans while collecting the alternative query plans generated by a query optimizer.

28 . The system according to claim 26 , wherein to iterate running the query comprises measuring and collecting performance results of the running of the query runs iteratively through the selected query plan and the alternative query plans under the sets of runtime conditions.

29 . The system according to claim 26 , wherein the logic via the processor compares performance of the selected query plan to performance of a determined best alternative query plan for selected sets of runtime conditions.

30 . A computer-implemented method comprising:

evaluating, via a processor, a selected query plan in comparison to alternative query plans over a predetermined range of runtime conditions including data characteristics, the evaluating comprising:

producing performance measurements of the selected query plan and the alternative query plans over the predetermined range of runtime conditions; and

analyzing the performance measurements to map performance of the selected query plan in comparison to performance of at least one alternative query plan of the alternative query plans over the predetermined range of runtime conditions.

31 . The method according to claim 30 , wherein the evaluating comprises generating a marked performance map through the predetermined range of runtime conditions, wherein marking is indicative of performance of the selected query plan in comparison to at least one of the alternative query plans under sets of runtime conditions of the predetermined range of runtime conditions.

32 . The method according to claim 30 , wherein the evaluating comprises generating a marked performance map, wherein marking is indicative of regions of the predetermined range of runtime conditions where the selected query plan degrades a predetermined amount when compared to a best alternative query plan of the alternate query plans.

33 . The method according to claim 30 , comprising generating via the processor the alternative query plans via a query optimizer, and wherein to map performance comprises to generate a performance map.

34 . A non-transitory computer-readable medium comprising instructions that direct a processor to:

evaluate a selected query plan in comparison to alternative query plans over a predetermined range of runtime conditions comprising data characteristics;

produce performance measurements of the selected query plan and the alternative query plans over the predetermined range of runtime conditions; and

analyze the performance measurements to map performance of the selected query plan in comparison to performance of at least one alternative query plan of the alternative query plans over the predetermined range of runtime conditions, wherein to map the performance comprises to generate a performance map.

35 . The non-transitory computer-readable medium of claim 34 , wherein the performance map comprises a marked performance map, wherein marking is indicative of regions of the predetermined range of runtime conditions where the selected query plan degrades a predetermined amount when compared to a best alternative query plan of the alternate query plans.

Assignments (7)
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: 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 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ARCSIGHT, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0577 →
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 Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →