Versioning and replaying performance tuning projects
First Claim
1. A method for diagnosing an application, comprising:
- traversing a decision tree, said decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, by following branches corresponding to symptoms experienced by the application until a leaf node is reached;
recording said traversal as a version, with subsequent traversals having a different version;
passing an initial data set describing the application and its current state to said knowledge base, said knowledge base defined as said decision tree and having one or more diagnosis nodes representing leaf nodes, one or more analysis nodes representing non-leaf nodes, and one or more symptom branches connecting between analysis nodes and other analysis nodes, or between analysis nodes and diagnosis nodes;
interrupting said traversing if an analysis node is reached that requests additional information regarding the application; and
traversing said decision tree again from a beginning node, and not interrupting said traversing if an analysis node is reached that requests additional information regarding the application if said additional information is stored in said database under a previous version and said additional information is still accurate.
3 Assignments
0 Petitions
Accused Products
Abstract
Versioning may be utilized in a knowledge base decision tree in order to provide several useful features. To accomplish this, when a decision tree is traversed, the decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, branches may be followed corresponding to symptoms experience by the application until a leaf node is reached. This traversal may be recorded as a version, with subsequent traversals having a different version. This allows a user to rerun performance tuning either from the beginning or from an earlier node without having to re-enter information already provided. It also allows a user to resume the performance tuning should he be interrupted in the middle, such as by a crash or by having to halt a long traversal.
13 Citations
8 Claims
-
1. A method for diagnosing an application, comprising:
-
traversing a decision tree, said decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, by following branches corresponding to symptoms experienced by the application until a leaf node is reached; recording said traversal as a version, with subsequent traversals having a different version; passing an initial data set describing the application and its current state to said knowledge base, said knowledge base defined as said decision tree and having one or more diagnosis nodes representing leaf nodes, one or more analysis nodes representing non-leaf nodes, and one or more symptom branches connecting between analysis nodes and other analysis nodes, or between analysis nodes and diagnosis nodes; interrupting said traversing if an analysis node is reached that requests additional information regarding the application; and traversing said decision tree again from a beginning node, and not interrupting said traversing if an analysis node is reached that requests additional information regarding the application if said additional information is stored in said database under a previous version and said additional information is still accurate.
-
-
2. A method for diagnosing an application, comprising:
-
traversing a decision tree, said decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, by following branches corresponding to symptoms experienced by the application until a leaf node is reached; recording said traversal as a version, with subsequent traversals having a different version; passing an initial data set describing the application and its current state to said knowledge base, said knowledge base defined as said decision tree and having one or more diagnosis nodes representing leaf nodes, one or more analysis nodes representing non-leaf nodes, and one or more symptom branches connecting between analysis nodes and other analysis nodes, or between analysis nodes and diagnosis nodes; interrupting said traversing if an analysis node is reached that requests additional information regarding the application; and traversing said decision tree again from an analysis node encountered during said traversing, said traversing said decision tree again beginning by following a different branch from said analysis node than was followed during said traversing.
-
-
3. A method for diagnosing an application, comprising:
-
traversing a decision tree, said decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, by following branches corresponding to symptoms experienced by the application until a leaf node is reached; recording said traversal as a version, with subsequent traversals having a different version; passing an initial data set describing the application and its current state to said knowledge base, said knowledge base defined as said decision tree and having one or more diagnosis nodes representing leaf nodes, one or more analysis nodes representing non-leaf nodes, and one or more symptom branches connecting between analysis nodes and other analysis nodes, or between analysis nodes and diagnosis nodes; interrupting said traversing if an analysis node is reached that requests additional information regarding the application; and resuming said traversal by using said traversal version if said traversing is interrupted for any reason.
-
-
4. An apparatus for diagnosing an application, comprising:
-
a database; a decision tree traverser; a traversal recorder coupled to said decision tree traverser and to said database; a traversal interrupter coupled to said decision tree traverser; and a traversal resumer coupled to said traversal interrupter and to said decision tree traverser. - View Dependent Claims (5)
-
-
6. An apparatus for diagnosing an application, comprising:
-
means for traversing a decision tree, said decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, by following branches corresponding to symptoms experienced by the application until a leaf node is reached; means for recording said traversal as a version, with subsequent traversals having a different version means for passing an initial data set describing the application and its current state to said knowledge base, said knowledge base defined as said decision tree and having one or more diagnosis nodes representing leaf nodes, one or more analysis nodes representing non-leaf nodes, and one or more symptom branches connecting between analysis nodes and other analysis nodes, or between analysis nodes and diagnosis nodes; means for interrupting said traversing if an analysis node is reached that requests additional information regarding the application; and means for traversing said decision tree again from a beginning node, and not interrupting said traversing if an analysis node is reached that requests additional information regarding the application if said additional information is stored in said database under a previous version and said additional information is still accurate.
-
-
7. An apparatus for diagnosing an application, comprising:
-
means for traversing a decision tree, said decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, by following branches corresponding to symptoms experienced by the application until a leaf node is reached; means for recording said traversal as a version, with subsequent traversals having a different version means for passing an initial data set describing the application and its current state to said knowledge base, said knowledge base defined as said decision tree and having one or more diagnosis nodes representing leaf nodes, one or more analysis nodes representing non-leaf nodes, and one or more symptom branches connecting between analysis nodes and other analysis nodes, or between analysis nodes and diagnosis nodes; means for interrupting said traversing if an analysis node is reached that requests additional information regarding the application; and means for traversing said decision tree again from an analysis node encountered during said traversing, said traversing said decision tree again beginning by following a different branch from said analysis node than was followed during said traversing.
-
-
8. An apparatus for diagnosing an application, comprising:
-
means for traversing a decision tree, said decision tree representing a knowledge base and having non-leaf nodes with one or more branches representing possible symptoms, and leaf nodes with no branches, by following branches corresponding to symptoms experienced by the application until a leaf node is reached; means for recording said traversal as a version, with subsequent traversals having a different version means for passing an initial data set describing the application and its current state to said knowledge base, said knowledge base defined as said decision tree and having one or more diagnosis nodes representing leaf nodes, one or more analysis nodes representing non-leaf nodes, and one or more symptom branches connecting between analysis nodes and other analysis nodes, or between analysis nodes and diagnosis nodes; means for interrupting said traversing if an analysis node is reached that requests additional information regarding the application; and means for resuming said traversal by using said traversal version if said traversing is interrupted for any reason.
-
Specification