IP Library Granted Patent US 9,424,288
Granted Patent B2
US 9,424,288 · App. 13/791,651 · Granted Aug 23, 2016

Analyzing database cluster behavior by transforming discrete time series measurements

Inventors: Yaser I. Suleiman (Santa Clara, CA); Michael Zoll (Foster City, CA); Angelo Pruscino (Los Altos, CA)
Assignee: ORACLE INTERNATIONAL CORPORATION
G06F17/30306G06F17/30572G06F17/30716
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 9,424,288
App. No.
13/791,651
Granted
Aug 23, 2016
Kind
B2
Abstract

A method, system, and computer program product for analyzing performance of a database cluster. Disclosed are techniques for analyzing performance of components of a database cluster by transforming many discrete event measurements into a time series to identify dominant signals. The method embodiment commences by sampling the database cluster to produce a set of timestamped events, then pre-processing the timestamped events by tagging at least some of the timestamped events with a semantic tag drawn from a semantic dictionary and formatting the set of timestamped events into a time series where a time series entry comprises a time indication and a plurality of values corresponding to signal state values. Further techniques are disclosed for identifying certain signals from the time series to which is applied various statistical measurement criteria in order to isolate a set of candidate signals which are then used to identify indicative causes of database cluster behavior.

Claims (52)

1. A computer implemented method for analyzing performance of components of a database cluster by transforming discrete events into a time series to identify dominant signals, the method comprising:

sampling, using a measurement instrument, a plurality of discrete event measurements of the database cluster to produce a set of timestamped events, the database cluster comprising a plurality of nodes that share a shared resource, and the plurality of discrete event measurements obtained from multiple ones of the plurality of nodes;

tagging at least one of the timestamped events sampled by one or more hardware components or one or more software components of the database cluster with a semantic tag, wherein tagging the at least one of the timestamped events with the semantic tag comprises assigning a state corresponding to the shared resource of the database cluster, the semantic tag includes at least a first state of waiting for the shared resource and a second state of obtaining access to the shared resource;

generating a single magnitude value for a related set of the timestamped events for multiple sessions with respect to the semantic tag for the first state of waiting for the shared resource or the second state of obtaining access to the shared resource by applying different weighting factors to some or all of the sessions of the timestamped events corresponding to the first and second state to derive the single magnitude value;

formatting the set of timestamped events into a time series, wherein a time series entry comprises a time indication and a plurality of values, at least one of the plurality of values corresponding to the single magnitude value generated for the related set of the semantic tag for the multiple sessions in the database cluster; and

processing the time series to identify at least one state signal.

2. The method of claim 1 , further comprising:

filtering noise and redundant data from the plurality of discrete event measurements;

deriving state transitions from the semantic tag that is applied to the timestamped events, wherein the state transitions are dispersed over one or more time periods;

generating the single magnitude value such that the weighting of semantics is applied to multi-dimensional data; and

generating a continuous signal to format the set of timestamped events into the time series comprises

using a signal selection engine to identify the at least one state signal, wherein the signal selection engine comprises a statistical engine to apply statistical criteria to select the at least one state signal.

3. The method of claim 1 , wherein the time series comprises a series of vectors of state values.

4. The method of claim 1 , wherein the one or more hardware components is taken from a resource list and the one or more software components is taken from a process list.

5. The method of claim 1 , further comprising smoothing the set of timestamped events to remove events exhibiting highest-frequency fluctuations.

6. The method of claim 1 , further comprising extracting a dominant signal from the time series.

7. The method of claim 1 , further comprising displaying, using a display screen, the dominant signal.

8. A computer system for analyzing performance of components of a database cluster by transforming discrete events into a time series to identify dominant signals, the computer system comprising:

a computer processor to execute a set of program code instructions; and

a memory to hold the program code instructions, in which the program code instructions comprises program code to perform;

sampling a plurality of discrete event measurements of the database cluster to produce a set of timestamped events, the database cluster comprising a plurality of nodes that share a shared resource, and the plurality of discrete event measurements obtained from multiple ones of the plurality of nodes;

tagging at least one of the timestamped events sampled by one or more hardware components or one or more software components of the database cluster with a semantic tag, wherein tagging the at least one of the timestamped events with the semantic tag comprises assigning a state corresponding to the shared resource of the database cluster, the semantic tag includes at least a first state of waiting for the shared resource and a second state of obtaining access to the shared resource;

generating a single magnitude value for a related set of the timestamped events for multiple sessions with respect to the semantic tag for the first state of waiting for the shared resource or the second state of obtaining access to the shared resource by applying different weighting factors to some or all of the sessions of the timestamped events corresponding to the first and second state to derive the single magnitude value;

formatting the set of timestamped events into a time series, wherein a time series entry comprises a time indication and a plurality of values, at least one of the plurality of values corresponding to the single magnitude value generated for the related set of the semantic tag for the multiple sessions in the database cluster; and

processing the time series to identify at least one state signal.

9. The computer system of claim 8 , wherein the program code instructions further comprises program code to perform:

filtering noise and redundant data from the plurality of discrete event measurements;

deriving state transitions from the semantic tag that is applied to the timestamped events, wherein the state transitions are dispersed over one or more time periods;

generating the single magnitude value such that the weighting of the semantics is applied to multi-dimensional data; and

generating a continuous signal to format the set of timestamped events into the time series comprises

using a signal selection engine to identify the at least one state signal, wherein the signal selection engine comprises a statistical engine to apply statistical criteria to select the at least one state signal.

10. The computer system of claim 8 , wherein the time series comprises a series of vectors of state values.

11. The computer system of claim 8 , wherein the one or more hardware components is taken from a resource list and the one or more software components is taken from a process list.

12. The computer system of claim 8 , further comprising program code for smoothing the set of timestamped events to remove events exhibiting highest-frequency fluctuations.

13. The computer system of claim 8 , further comprising program code for extracting a dominant signal from the time series.

14. The computer system of claim 8 , further comprising program code for displaying, using a display screen, the dominant signal.

15. A computer program product embodied in a non-transitory computer readable medium, the computer readable medium having stored thereon a sequence of instructions which, when executed by a processor causes the processor to execute a process to analyze performance of components of a database cluster by transforming discrete events into a time series to identify dominant signals, the process comprising:

sampling a plurality of discrete event measurements of the database cluster to produce a set of timestamped events the database cluster comprising a plurality of nodes that share a shared resource, and the plurality of discrete event measurements obtained from multiple ones of the plurality of nodes;

tagging at least one of the timestamped events sampled by one or more hardware components or one or more software components of the database cluster with a semantic tag, wherein tagging the at least one of the timestamped events with the semantic tag comprises assigning a state corresponding to the shared resource of the database cluster, the semantic tag includes at least a first state of waiting for the shared resource and a second state of obtaining access to the shared resource;

generating a single magnitude value for a related set of the timestamped events for multiple sessions with respect to the semantic tag for the first state of waiting for the shared resource or the second state of obtaining access to the shared resource by applying a different weighting factors to some or all of the sessions of the timestamped events corresponding to the first and second state to derive the single magnitude value;

formatting the set of timestamped events into a time series, wherein a time series entry comprises a time indication and a plurality of values, at least one of the plurality of values corresponding to the single magnitude value generated for the related set of the semantic tag for the multiple sessions in the database cluster; and

processing the time series to identify at least one state signal.

16. The computer program product of claim 15 , the process further comprising:

filtering noise and redundant data from the plurality of discrete event measurements;

deriving state transitions from the semantic tag that is applied to the timestamped events, wherein the state transitions are dispersed over one or more time periods;

generating the single magnitude value such that the weighting of the semantics is applied to multi-dimensional data; and

generating a continuous signal to format the set of timestamped events into the time series comprises

using a signal selection engine to identify the at least one state signal, wherein the signal selection engine comprises a statistical engine to apply statistical criteria to select the at least one state signal.

17. The computer program product of claim 15 , wherein the time series comprises a series of vectors of state values.

18. The computer program product of claim 15 , wherein the one or more hardware components is taken from a resource list and the one or more software components is taken from a process list.

19. The computer program product of claim 15 , the process further comprising instructions for smoothing the set of timestamped events to remove events exhibiting highest frequency fluctuations.

20. The computer program product of claim 15 , the process further comprising instructions for extracting a dominant signal from the time series.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2014
From: SULEIMAN, YASER I.; ZOLL, MICHAEL; PRUSCINO, ANGELO
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 032962/0947 →
Continuity (1)
Related Publication 20140258254A1 · Sep 11, 2014