A mechanism is provided for determining a predicted performance of a database com. A first model for a database is determined using machine learning and training data based on monitoring the database operating in a production environment. A second model for the database is determined by combining the first model and a knee of curve formula for the database. The second model is stored for use in determining the predicted performance of the database in response to a database query.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method, in a data processing system comprising a processor and a memory coupled to the processor, for determining a predicted performance of a database, the method comprising: determining, by the processor, a first model for the database using machine learning and training data based on monitoring the database operating in a production environment; determining, by the processor, a second model for the database, wherein the second model combines the first model and a knee of curve formula for the database; and storing, by the processor, the second model for use in determining the predicted performance of the database in response to a database query. 2. The method of claim 1, wherein the training data comprises values of predefined model input features and model output features determined by monitoring the database when executing database queries in the production environment. 3. The method of claim 2, wherein, for each database query: the model input features comprise one or more of: cardinality, selectivity, column indexing, column count for columns accessed, row count for rows returned, table density, subquery count, selection predicates count, where clause predicates count, join predicates count, sort columns count, or aggregation columns count; and the model output features comprise one or more of: CPU utilization or whether CPU saturation is reached. 4. The method of claim 1, further comprising: applying, by the processor, the first model to a database query of the database to determine a predicted output feature value for the first model; comparing, by the processor, the predicted output feature value for the first model with an equivalent actual feature value determined by monitoring the database in the production environment in response to the database query; and determining, by the processor, an accuracy of prediction by the first model based on the comparison. 5. The method of claim 4, further comprising: determining, by the processor, the second model based on the accuracy of prediction by the first model. 6. The method of claim 4, further comprising: applying, by the processor, the knee of curve formula for the database to the database query for determining a predicted output feature value for knee of curve forecasting; comparing, by the processor, the predicted output feature value for knee of curve forecasting with an equivalent actual feature value determined by monitoring the database in the production environment in response to the database query; and determining, by the processor, an accuracy of prediction by the knee of curve forecasting based on the comparison. 7. The method of claim 6, wherein applying the knee of curve formula for the database to the database query uses the selectivity of a column indexed by the database query. 8. The method of claim 6, further comprising: determining, by the processor, the second model based on the accuracy of prediction by the first model, the accuracy of prediction by the knee of curve forecasting, or both. 9. The method of claim 1, further comprising: determining, by the processor, the second model by combining the first model and the knee of curve formula for the database according to respective weights, wherein the weights for the first model and the knee of curve formula are determined based on an accuracy of prediction of database performance, in response to a database query, by the first model and knee of curve forecasting, and a column indexed by the database query. 10. The method of claim 1, further comprising: determining, by the processor, a predicted performance of the database in response to a new database query in a test/development environment, wherein the determining comprises applying the second model to the new database query and wherein the second model applies the first model, the knee of curve formula, or both to the new database query according to the columns indexed by the new database query. 11. A system comprising: a processor; and a memory coupled to the processor, wherein the memory comprises instructions which, when executed by the processor, cause the processor to: determine a first model for a database using machine learning and training data based on monitoring the database operating in a production environment; determine a second model for the database, wherein the second model combines the first model and a knee of curve formula for the database; and store the second model for use in determining the predicted performance of the database in response to a database query. 12. The system of claim 11, wherein the instructions further cause the processor to: monitor the database when executing database queries in a production environment to obtain the training data, wherein the training data comprises values of predefined model input features and model output features based on the database monitoring. 13. The system of claim 11, wherein the instructions further cause the processor to: apply the first model to a database query of the database to determine a predicted output feature value for the first model; compare the predicted output feature value for the first model with an equivalent actual feature value determined by monitoring the database in the production environment in response to the database query; and determine an accuracy of prediction by the first model based on the comparison. 14. The system of claim 13, wherein the instructions further cause the processor to: determine the second model based on the accuracy of prediction by the first model. 15. The system of claim 13, wherein the instructions further cause the processor to: apply the knee of curve formula for the database to the database query for determining a predicted output feature value for knee of curve forecasting; compare the predicted output feature value for knee of curve forecasting with an equivalent actual feature value determined by monitoring the database in the production environment in response to the database query; and determine an accuracy of prediction by the knee of curve forecasting based on the comparison. 16. The system of claim 15, wherein the instructions further cause the processor to: apply the knee of curve formula for the database using the selectivity of a column indexed by the database query. 17. The system of claim 15, wherein the instructions further cause the processor to: determine the second model based on the accuracy of prediction by the first model, the accuracy of prediction by the knee of curve forecasting, or both. 18. The system of claim 11, wherein the instructions further cause the processor to: determine the second model by combining the first model and the knee of curve formula for the database according to respective weights, wherein the weights for the first model and the knee of curve formula are determined based on an accuracy of prediction of database performance, in response to a database query, by the first model and knee of curve forecasting, and a column indexed by the database query. 19. The system of claim 11, wherein the instructions further cause the processor to: determining a predicted performance of the database in response to a new database query in the test/development environment, wherein the determining comprises applying the second model to the new database query and wherein the second model applies the first model, a knee of curve formula, or both to the new database query according to the columns indexed by the new database query. 20. A computer program product comprising a computer readable storage medium having a computer readable program stored therein, wherein the computer readable program, when executed on a computing device, causes the computing device to: determine a first model for a database using machine learning and training data based on monitoring the database operating in a production environment; determine a second model for the database, wherein the second model combines the first model and a knee of curve formulae for the database; and store the second model for use in determining the predicted performance of the database in response to a database query.