CPC G06F 16/24524 (2019.01) [G06F 11/1471 (2013.01); G06F 11/3409 (2013.01); G06F 16/21 (2019.01)] | 20 Claims |
1. A method, comprising:
receiving, by a computing device, a Structured Query Language (SQL) query from a user, wherein the SQL query is associated with a problem;
generating, by the computing device, execution structures from the SQL query, the execution structures each including different logical paths for executing statements of the SQL query;
generating, by the computing device, an initial set of test results from one or more databases by running the SQL query using each of the execution structures;
building, by the computing device, logs which record information of the running of the SQL query using each of the execution structures;
generating, by the computing device, a candidate execution structure including new logical paths for executing statements of the SQL query using the information from the logs;
normalizing, by the computing device, components of the SQL query using the candidate execution structure, thereby generating a normalized SQL query;
running, by the computing device, the normalized SQL query in a database, thereby generating a new set of test results;
diagnosing a source of the problem by comparing, by the computing device, the new set of test results of the normalized SQL query to the initial set of test results to determine whether the new set of test results matches the initial set of test results;
in response to a user applying a repair to the database, compiling repair data of the repair as training data; and
training a knowledge center using machine learning with the training data.
|