Patent ID: 9710530
Date: 2017-07-18
CPC Classifications: G06F

Claim:
1. A computer-implemented method performed by a processor, comprising: decomposing an Extract, Transform, and Load (ETL) job into two or more stage instances, the two or more stage instances including a first extraction stage instance and a second extraction stage instance, a first data validation stage instance and a second data validation stage instance, a transform stage instance, and a transfer stage instance; identifying one or more conditions for each of the stage instances, the one or more conditions including a network reliability condition for the first and second extraction stage instances and for the transfer stage instance, the one or more conditions including a database performance condition for the first and second data validation stage instances, and the one or more conditions including a third party tool condition for the transform stage instance; generating a set of tests for each of the one or more conditions, wherein each set of tests includes one or more tests for a corresponding condition, wherein the set of tests for the network reliability condition includes a ping test, the set of tests for the database performance condition includes a database query test, and the set of tests for the third party tool condition includes a test to validate transformed data values; extracting data from a first source in the first extraction stage instance and extracting data from a second source in the second extraction stage instance; validating data values for the first source in the first data validation stage instance and validating data values from the second source in the second data validation stage instance; transforming the data from the first source and second source in the transform stage instance, generating a first joined data; transferring the first joined data to one or more target databases in the transfer stage instance; generating a first test result for the ETL job by performing a first set of tests during a runtime phase of the ETL job; saving the first test result to an archive, the archive including data of a second test result and one or more resolutions for an underperforming condition, the second test result being generated by performing the first set of tests on a prior ETL job; determining a first range for the first test result by calculating an average and a standard deviation from two or more historical test results, the two or more historical test results including the second test result, and wherein the first range is one standard deviation from the average; determining that the first test result from the first set of test results is outside of the first range by comparing the first test result with the first range; generating a performance determination report, the performance determination report including the first test result; and providing the performance determination report to a user.